将十进制数字插入数字并将总和舍入

时间:2015-11-22 13:23:33

标签: sql oracle oracle11g

我是Oracle新手,来自MS SQL Server环境。

如何格式化数字(10)的列,以便在最后两位数之前插入逗号,对格式化的值求和,然后舍入总和?

金额列值

400 (format to 4,00)
4000 (format to 40,00)
40000 (format to 400,00)
400000 (format to 4000,00)
639 (format to 6,39)

格式化数字的总和在这种情况下将是:4445,39

总和将返回:4445。

我尝试过的查询:

select TO_CHAR((ROUND(SUM(Amount))),'FM9999999G90')
select TO_NUMBER(ROUND((TO_CHAR(SUM(Amount),'FM9999999G90'))), '9999999.99')

结果:4450.39,但我希望在这种情况下将其四舍五入为4450。

Fiddle

1 个答案:

答案 0 :(得分:1)

您只需将数字除以100,然后 ROUND

 ROUND(SUM(amount)/100)

有关正常工作的演示,请参阅 SQL Fiddle