我需要一种在T-SQL(SQL Server 2005)中进行舍入的方法。
0.0041 -> 0.005
0.0049 -> 0.005
0.0040 -> 0.004
我使用ROUND()
尝试了以下选择:
SELECT ROUND(0.004, 3,1) + .001
问题是:它不适用于0.0040 - > 0.004
答案 0 :(得分:2)
此:
SELECT CEILING(1000 * 0.0041) / 1000.0
产生
0.005
而这:
SELECT CEILING(1000 * 0.004) / 1000.0
产生
0.004
答案 1 :(得分:1)
试试这个:
SELECT X
, CEILING(X * 1000) / 1000 AS X4
FROM (
SELECT 0.0041 X UNION ALL
SELECT 0.0049 UNION ALL
SELECT 0.0040 ) A
输出:
X X4
--------------------------------------- ---------------------------------------
0.0041 0.005000
0.0049 0.005000
0.0040 0.004000