首页 > 编程笔记

MySQL ROUND():四舍五入取整

MySQL 中的 ROUND() 函数用于对数字进行四舍五入,这个函数可以接收一个参数,也可以接收两个参数。

MySQL ROUND(x)

ROUND(x) 返回最接近于参数 x 的整数,对 x 值进行四舍五入。

【实例】使用ROUND(x)函数对操作数进行四舍五入,输入语句如下:
mysql> SELECT ROUND(-1.14),ROUND(-1.67), ROUND(1.14),ROUND(1.66);
+--------------+--------------+-------------+-------------+
| ROUND(-1.14) | ROUND(-1.67) | ROUND(1.14) | ROUND(1.66) |
+--------------+--------------+-------------+-------------+
|        -1   |       -2    |        1   |       2    |
+--------------+--------------+-------------+-------------+
可以看到,四舍五入处理之后,只保留了各个值的整数部分。

MySQL ROUND(x,y)

ROUND(x,y) 返回最接近于参数 x 的数,其值保留到小数点后面 y 位,若 y 为负值,则将保留 x 值到小数点左边 y 位。

【实例】使用 ROUND(x,y) 函数对操作数 x 进行四舍五入操作,结果保留小数点后面 y 位,输入语句如下:
mysql> SELECT ROUND(1.38, 1), ROUND(1.38, 0), ROUND(232.38, -1), ROUND(232.38,-2);
+----------------+----------------+-------------------+------------------+
| ROUND(1.38, 1) | ROUND(1.38, 0) | ROUND(232.38, -1) | ROUND(232.38,-2) |
+----------------+----------------+-------------------+------------------+
|        1.4    |          1    |          230    |          200    |
+----------------+----------------+-------------------+------------------+
ROUND(1.38, 1) 保留小数点后面 1 位,四舍五入的结果为 1.4;ROUND(1.38, 0) 保留小数点后面 0 位,即返回四舍五入后的整数值;ROUND(23.38, -1) 和 ROUND (232.38,-2) 分别保留小数点左边 1 位和 2 位。

提示,当 y 值为负数时,保留的小数点左边的相应位数直接保存为 0,不进行四舍五入。

推荐阅读