消除 VARCHAR 列中的多余空格

Mar*_*tuc 5 db2

在表中,我有一个定义为 BIGINT(8) 的 ID 列和一个定义为 VARCHAR(100) 的 VOUCHER 列。无论该字段中值的实际长度如何,SQL 始终返回完整长度值,这在 CLI 中可能很麻烦,特别是在选择更多字段时。

这是我得到的示例

ID                   VOUCHER                                                                                               
-------------------- ----------------------------------------------------------------------------------------------------                                                                   
               26462 7083d8374831148f9e2271741529ee37                                                                                                                                                 
               26624 9170220e6971c2414613d0a69b420156                                                                    
               26625 b75d12847a24981d36f7bfcd58e8a230  
Run Code Online (Sandbox Code Playgroud)

我尝试了TRIM//LTRIM函数RTRIM,但没有成功。

我可以用什么来获得这些内容,至少用于显示目的:

ID     VOUCHER                           
------ --------------------------------
26462  7083d8374831148f9e2271741529ee37
26464  9170220e6971c2414613d0a69b420156
26465  b75d12847a24981d36f7bfcd58e8a230
Run Code Online (Sandbox Code Playgroud)

Mar*_*tuc 4

感谢@JNK 的评论,select cast(trim(id) as varchar(6)) as id, cast(trim(voucher) as varchar(32)) as voucher, auth from my_table完成了这项工作。