要将字符格式(00001000000)转换为10000.00。请帮帮我。
我已经尝试了
select to_number('00012300','9999999999.99','nls_numeric_characters = ''.,''') from dual
这个脚本但它只能显示12300,实际上我想查看为123.000
答案 0 :(得分:1)
好吧,您可以使用
将您的值转换为数字select to_number('00012300') from dual;
似乎你除以100.
所以
select to_number('00012300') / 100 from dual;
如果您想显示两位小数,请再次使用格式
返回varcharselect to_char(to_number('00012300') / 100, '999999D99') from dual;
答案 1 :(得分:0)
您可以使用的是一种类似的解决方法:
CAST(round(0000000111100 / 100, 2) AS numeric(38, 2))
所以你要做的就是将你的值除以2位小数,然后除以100,然后将其转换成剩下2个数字的数字。
如果您的值是字符串,只需将其转换为之前的整数。
和平