如何在sql server中删除一定数量的小数

时间:2014-11-20 11:37:52

标签: sql sql-server-2008

如果我有以下查询

  

选择总和(8.9177 + 7.1950 + 5.1246)作为总数   来自table1

给我21.2373

如何将该数字舍入为21.2

我必须始终只有一个小数位,仅此而已

3 个答案:

答案 0 :(得分:2)

这里有两个解决方案:

  1. 它会将它以十进制形式投射,小数点为1:

    从yourtable选择演员((总和(8.9177 + 7.1950 + 5.1246))AS十进制(19,1))

  2. 它将它向上舍入到1个小数点,但输出将在4位小数点重新发送

    从yourtable选择round(sum(8.9177 + 7.1950 + 5.1246),1)

  3. 使用第二个选项,因为它很简单,不会改变实际的数据类型。

答案 1 :(得分:1)

SELECT ROUND(SUM(8.9177 + 7.1950 + 5.1246),1) AS total 
FROM table1

答案 2 :(得分:1)

select CAST((sum(8.9177 + 7.1950 + 5.1246)) AS Decimal (10,1)) as total from tbl_name

希望这有帮助。