如何将大小N的数量转换为字符串 - oracle

时间:2015-03-11 09:25:22

标签: sql oracle

以下查询让我以正确的格式输出

select  to_char(999.00,'9,99.00') from dual

output = 9,99.00  

如果我没有特定尺寸的数字怎么办?

999999999999999999999999999999999.00   

应转换为

9999999999999999999999999999999,99.00   

是否可以这样做?
那有什么格式吗?

1 个答案:

答案 0 :(得分:1)

在格式化字符串中使用FM前缀。它会从转换结果中修剪前导空格:

select ''''||to_char(123456.00, 'FM999999999999999999,99.00')||''''
     , ''''||to_char(123456.00,   '999999999999999999,99.00')||''''
  from dual
     ;

产生

'1234,56.00'                
'               1234,56.00'

注意: 您必须指定尽可能多的数字,因为要转换的最大数字将在其与格式匹配的最短表示中具有。将复杂的措辞变成一个简单的例子,to_char(123456.00, 'FM9,99.00')不会起作用。