如果我们指定第二个参数的负值,那么小数点前的数字将被删除并四舍五入。要删除的位数取决于第二个负数的值。以下示例将说明ROUND()
函数输出中取决于第二个参数的负值的更改。
mysql> Select ROUND(1789.456,-1); +--------------------+ | ROUND(1789.456,-1) | +--------------------+ | 1790 | +--------------------+ 1 row in set (0.00 sec)
上面的查询返回1790,因为小数点前的第一个数字(由于值-1将被删除)为9(大于5),因此该数字(即8)将四舍五入为9。
mysql> Select ROUND(1789.456,-2); +--------------------+ | ROUND(1789.456,-2) | +--------------------+ | 1800 | +--------------------+ 1 row in set (0.00 sec)
上面的查询返回1800,因为小数点前的第二个数字(由于值-2将被删除)为8(大于5),因此该数字(即7)将四舍五入为8。
mysql> Select ROUND(1789.456,-3); +--------------------+ | ROUND(1789.456,-3) | +--------------------+ | 2000 | +--------------------+ 1 row in set (0.00 sec)
上面的查询返回2000,因为小数点前的第三个数字(由于值-3将被删除)为7(即> 5),因此该数字(即1)将四舍五入为2。
mysql> Select ROUND(1789.456,-4); +--------------------+ | ROUND(1789.456,-4) | +--------------------+ | 0 | +--------------------+ 1 row in set (0.00 sec)
上面的查询返回0,因为小数点前的位数为4,第二个参数的值为-4。