SQL数字小数

时间:2012-05-17 11:59:22

标签: sql sql-server tsql

我运行一个查询,我的所有数字都是5个小数点:

例如 -

156713.55000
2103613.03000
2080.08000

我可以在代码中添加一段简单的代码,因此'Cost'表的结果是2小数点吗?

2 个答案:

答案 0 :(得分:11)

以下示例将为您提供帮助。

四舍五入:

select ROUND(55.4567, 2, 0)
-- Returns 55.4600

select CAST(55.4567 as decimal(38, 2))
-- Returns 55.46

没有四舍五入:

select ROUND(55.4567, 2, 1)
-- Returns 55.4500

select CAST(ROUND(55.4567, 2, 1) as decimal(38, 2))
-- Returns 55.45

使用Str()功能。它需要三个参数(数字,要显示的总字符数,以及要显示的小数位数

  Select Str(12345.6789, 12, 3)

显示:'12345.679'(3个空格,5个数字12345,一个小数点和三个十进制数字(679)。 - 如果必须截断,则为圆形

总共12个字符,小数点右边有3个。

答案 1 :(得分:5)

只需使用ROUND功能:

SELECT ROUND(column, 2) FROM Cost

或者要删除小数点并进行舍入,请使用CAST

SELECT CAST(column as decimal(10, 2))