无法删除尾随空格

时间:2017-09-11 18:45:05

标签: db2 trim db2-luw

我正在尝试删除尾随空格但没有成功:

select trim(trailing ' ' from '1234                       '), '56' from sysibm.sysdummy1;
1                           2 
--------------------------- --
1234                        56

我错过了什么?

3 个答案:

答案 0 :(得分:5)

据记载,trim将保持数据类型不变 - 请查看Knowledge Center

describe "select trim( '1234                       '), '56' from sysibm.sysdummy1"


 Column Information

 Number of columns: 2

 SQL type              Type length  Column name                     Name length
 --------------------  -----------  ------------------------------  -----------
 448   VARCHAR                  27  1                                         1
 448   VARCHAR                   2  2                                         1

如果要更改结果的外观/数据类型,可以将其转换为所需的长度或数据类型

select varchar(trim( '1234                       '), 5), '56' from sysibm.sysdummy1"

1     2
----- --  
1234  56

1 record(s) selected.

答案 1 :(得分:2)

你的意思是:

select trim(trailing ' ' from '1234                       ')|| '56' from sysibm.sysdummy1

具体来说:

select length(trim(trailing ' ' from '1234                       ')|| '56') from sysibm.sysdummy1;


1          
-----------
          6

  1 record(s) selected

.

答案 2 :(得分:0)

其他方法,如果您的db2版本启用RPAD功能(V7R2 on isieie):

select rpad('1234                       ', 5, ' '), '56' 
from sysibm.sysdummy1                                    
相关问题