我尝试了以下内容:
ROUND(0.55,0)
但是,它返回值0,而我想要1.在MYSQL中没有其他方法可以获得值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)
。