Ba hàm xử lý số thực thành số nguyên khác nhau về hướng làm tròn:
CEILING() – Làm tròn lên (xa 0)
mysql> SELECT CEILING(3.46); -- 4 mysql> SELECT CEILING(-6.43); -- -6 (lên về 0)
FLOOR() – Làm tròn xuống (về 0)
mysql> SELECT FLOOR(3.46); -- 3 mysql> SELECT FLOOR(-6.43); -- -7 (xuống xa 0)
ROUND() – Làm tròn toán học (có tham số độ chính xác)
mysql> SELECT ROUND(5.693893); -- 6 mysql> SELECT ROUND(5.693893, 2); -- 5.69
So sánh 3 hàm
mysql> SELECT ROUND(1.415, 2), FLOOR(1.415), CEILING(1.415); +----------------+--------------+----------------+ | ROUND(1.415,2) | FLOOR(1.415) | CEILING(1.415) | +----------------+--------------+----------------+ | 1.42 | 1 | 2 | +----------------+--------------+----------------+
Tóm tắt:
- ROUND: Làm tròn chuẩn (≥5 lên, <5 xuống), có tham số độ chính xác
- FLOOR: Luôn làm tròn xuống (về -∞)
- CEILING: Luôn làm tròn lên (về +∞)