Search code examples
db2db2-luw

select with trim trailing blanks of char in db2


how do I remove trailing blanks in a select on a char(32)?

db2 "create table test (col1 char(32))"
db2 "insert into test values ('one')"

I tried

db2 "select cast(trim(t ' ' from col1 ) as varchar(32)) from test"
db2 "select trim(t ' ' from cast(col1  as varchar(32)) from test"
db2 "select cast(trim(t ' ' from cast(col1  as varchar(32))) as varchar(32)) from test"

... but I always have trailing blanks


Solution

  • Try

    select trim(cast(col1 as varchar(32))) from test
    

    proof it with

    select length(trim(cast(col1 as varchar(32))) ) from test