【发布时间】:2016-05-13 23:57:32
【问题描述】:
有没有办法用逗号格式化千位数字?
根据 IBM 文档,语法如下:
DECIMAL(:newsalary, 9, 2, ',')
newsalary 是字符串(字段) 9是精度 2是规模 , 是分隔符。
我试过了:
SELECT DECIMAL ( T1.FIELD1 , 15 , 2 , "," ) AS TOTAL FROM TABLE T1
在尝试时,我收到以下错误:
消息:[SQL0171] 函数 DECIMAL 的参数 4 无效。
【问题讨论】:
-
t1.field1 是十进制还是字符串?
-
我找到了您所依赖的示例,但它不适用于您的情况。它用于将 ',' 替换为 '.'例如。 1020,50 到 1020.50 ,我建议您将前 3 个字母子串化,然后用逗号连接,然后将 4-6 子串和逗号连接,依此类推。
-
如果 t1.field1 是一个字符串,那么它已经有一个逗号,这取决于您尝试使用 DECIMAL() 的方式。该函数希望删除逗号,以便它可以创建一个有效的数值(不能嵌入逗号)。您到底打算如何处理结果值(一旦它是数字)?
标签: sql ibm-midrange number-formatting decimalformat