在MYSQL中舍入小于1的数字

时间:2015-12-01 09:40:37

标签: mysql sql

我尝试了以下内容:

ROUND(0.55,0)

但是,它返回值0,而我想要1.在MYSQL中没有其他方法可以获得值1吗?

1 个答案:

答案 0 :(得分:0)

问题在round()函数的mysql文档中有描述,具体为:

  

对于近似值数字,结果取决于C库。在许多系统上,这意味着ROUND()使用“round to nearest even”规则:任何小数部分的值都舍入到最接近的偶数。

0.55不能用二进制精确表示,因此使用近似数字,这取决于上述行为。如果给定操作系统上的C库使用“舍入到最接近偶数”规则,则0.55将舍入为0。

要模仿“round halfway up”方法,请将舍入的数字加0.5,取整数部分:floor(x+0.5)