如何在SQL Server中正确地舍入数字?

时间:2016-04-07 20:10:20

标签: sql-server formula

下面的图片示例,有没有办法让总成本v1在SQL Server中精确地等于v2?

我有一份简单的销售报告。

  • 费用有2位小数或4位小数。
  • 计数v2只是每个唯一项目的计数v1的总和。

我在SQL Server中的总成本v1公式为:

SUM(ROUND(([Cost]*(CAST([Count] as INT))), 2)) as 'Total Cost v1'

有没有办法修改上面的公式让最终的总数与v2相匹配? 否则,如果列表变大,数字上的差异会更大。

Count的数据类型是十进制(10,4)。 Cost的数据类型是金钱。

enter image description here

1 个答案:

答案 0 :(得分:1)

您应该将公式更改为

ROUND(SUM([Cost]*(CAST([Count] as INT))), 2) as 'Total Cost v1'