在项目中经常遇到需要左补零,右补零的情况,在DB2实验环境中展示
1、左补零
(1)数字左补零,数字长度不定
用right(digits(cast(expression as bigint)),NUM)能实现,
注意:
①right(expression,NUM):表示从"expression"的右侧第一个字符取,取满NUM位,若不足NUM位左侧补零
②digits():返回SMALLINT、INTEGER、BIGINT或者DECIMAL的字符串值
其中smallint:返回5位字符串,INTEGER返回10位字符串,BIGINT返回19位字符串,DECIMAL返回31位字符串
③cast(expression as bigint):强制类型转换
④若NUM>bigint的长度,则右侧补空格
举例展示:
select right(digits(cast(12345 as smallint)),20) SMALL_Value,Length(right(digits(cast(12345 as smallint)),20)) Length_Value,/*smallint占5位,Length_Value=20, digits(cast(12345 as smallint))不足20位的部分右侧用空格补齐*/ right(digits(cast(