我运行一个查询,所有数字都精确到小数点后 5 位:
例如 -
156713.55000
2103613.03000
2080.08000
是否有一段简单的代码可以添加到我的代码中,以便“成本”表结果精确到小数点后两位?
最佳答案
以下示例将对您有所帮助。
四舍五入:
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 位。
关于SQL 数字小数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10635344/