将ROUND应用于一起添加的2列

时间:2015-12-09 14:49:35

标签: sql sql-server sql-server-2008

在下面的陈述中,有没有办法将最终计算舍入到4位小数?我只能弄清楚如何将ROUND单独应用到列中 列都是FLOAT。

SELECT (ISNULL([COLUMN A],0) + ISNULL([Column B],0)) AS TOTAL

2 个答案:

答案 0 :(得分:2)

您可以使用ROUND()作为上述jarlh执行此操作,或者,如果您要删除尾随的0,则使用CAST()

SELECT CAST((ISNULL([COLUMN A],0) + ISNULL([COLUMN B],0)) AS NUMERIC(38,4)) AS TOTAL 

例如:

SELECT ROUND((ISNULL(5.66666,0) + ISNULL(7.22222222,0)) , 4) AS TOTAL -- 12.88890000
SELECT CAST((ISNULL(5.66666,0) + ISNULL(7.22222222,0)) AS NUMERIC(38,4)) AS TOTAL -- 12.8889

答案 1 :(得分:1)

你的意思是这样吗?

SELECT ROUND((ISNULL([COLUMN A],0) + ISNULL([Column B],0)), 4) AS TOTAL

编辑 @jarlh稍快一点......