mysql 查询基于特定小数值的舍入

mysql query to round based specific decimal values

我可以根据特定的小数值对数值进行四舍五入吗,我的 mysql table 中有这些数据:

1122.46
4599.99
2000.56
5249.99

我想查询这样的结果:

1122.46
4600
2000.56
5250

其中只有具有 .99 小数点的值被四舍五入。

我唯一能想到的方法是:

SELECT `number` + (FLOOR(`number` + 0.01)-FLOOR(`number`))*0.01

正在测试:

5249.99 + (FLOOR(5249.99 + 0.01)-FLOOR(5249.99))*0.01 = 5250

1122.46 + (FLOOR(1122.46 + 0.01)-FLOOR(1122.46))*0.01 = 1122.46

您可以使用案例:

select number + case when number - floor(number) = .99 then .01 else 0 end