Results 1 to 2 of 2
  1. #1
    Join Date
    Jul 2004
    Location
    Ottawa, Canada
    Posts
    58

    Unanswered: DB2 automatically trims on compare

    Is it proper for DB2 to automatically trim whitespace on a compare.

    example:

    select * from temp where name = 'TEST NAME'

    select * from temp where name = 'TEST NAME '


    Both of these return the same thing. In this example it isn't a big deal, but is it proper for DB2 to assume that the value should be trimed?

  2. #2
    Join Date
    Aug 2001
    Location
    UK
    Posts
    4,650
    It is padding, and not trimming .. ie, if two strings of unequal lengths are to be compared, then the shorter string is padded with blanks to the right ...

    If the field is a CHAR field, then db2 stores a shorter lenght field padded with blanks to the right ... So, anyways the strings are the same ..

    If you are using VARCHAR, then the workaround is to say
    select * from temp where name = 'TEST NAME ' and length(name)=length('TEST NAME ')
    HTH

    Sathyaram
    Visit the new-look IDUG Website , register to gain access to the excellent content.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •