日期:2014-05-17  浏览次数:20824 次

只有一位小数时,如何加0????
小数点左边整数位数不定,可能是两位,也可能是3位、4位,当只有一位小数时,想加0
例:123.4时,变成123.40
我是这样做的:
to_number(to_char(SUM(AMO),'9999999999999999999999999999999D99')) AMO1
但这个字段必须是数字型,所以我用to_number转换,0就不见了,123.40变成了123.4

如何解决这个问题???????????

------解决方案--------------------
这个是显示问题,
使用sql*plus 格式化输出显示,可以解决:

14:07:49 SYS@orcl> col a format 9999999999999999.99
14:07:56 SYS@orcl> select round(2132142.10,2) a from dual;

                   A
--------------------
          2132142.10

已选择 1 行。

------解决方案--------------------

with t1 as
(
     select '123.4' c1 from dual union all
     select '123.55' c1 from dual union all
     select '123.24' c1 from dual union all
     select '123.6' c1 from dual 
)

select decode(length(c1)-instr(c1,'.'),1,c1
------解决方案--------------------
'0',c1) c1
from t1


     c1
--------------------
1    123.40
2    123.55
3    123.24
4    123.60