sql-to_char()保留小数,千位分隔符
select to_char(999999999999.99, 'fm999,999,999,999,999.000') as qty_1 from dual;
输出结果:999,999,999,999.990
注意事项:
– .后面的是要保留的小数位数,必须是0
– fm-去除空格
但是这样做当要处理的数字为0.99时,
select to_char(0.99, 'fm999,999,999,999,999.000') as qty_1 from dual;
输出结果:.990
这样显然是不行的
解决方法
select to_char(0.99, 'fm999,999,999,999,990.000') as qty_1 from dual;
输出结果:0.990
select to_char(1111111111111111111111111111.99, 'fm999,999,999,999,990.000') as qty_1 from dual;
输出结果:########################
当要处理的数字的整数位数大于格式的整数位数时,就会出现这样的情况
select to_char(1.99999, 'fm999,999,999,999,990.000') as qty_1 from dual;
输出结果:2.000
当要处理的数字的小数位数大于格式的小数位数时,对数字进行四舍五入