| 发表于:2007-11-24 00:52:186楼 得分:0 |
解决方案 1:digits() + substr() 一起使用 select date(substr(digits(2004),7,4) ¦ ¦'-' ¦ ¦substr(digits(9),9,2) ¦ ¦'-' ¦ ¦substr(digits(30),9,2)) from sysibm.sysdummy1 result set : 2004-09-30 00:00:00.0 注: digits( parameter) , if the parameter is integer , 结果值是10 位长的字符, 如果参数位数不足10位,在其左边补0 。 例如: digits(30)-> ‘0000000030' 解决方案 2: rtrim() + char() 一起使用 eg: select date(rtrim(char(2005)) ¦ ¦ '-' ¦ ¦rtrim(char(4)) ¦ ¦ '-' ¦ ¦rtrim(char(15))) from sysibm.sysdummy1; result set : 2005-04-15 00:00:00.0 注: 1) char(parameter) , if the parameter is integer , 结果值是11 位长的字符,如果参数位数不足11位,在其右边补 ' ' (也就是空字符 ' ' ) 2) rtrim function removes blanks from the end of the argument. 这里推荐解决方案 2 这里谢谢4楼分享, 希望这个总结帮到你各。 | | |
|