CEILING () hàm trả về giá trị số nguyên nhỏ nhất không nhỏ hơn X. Hãy xem xét ví dụ sau -
mysql> Select CEILING(3.46); +---------------+ | CEILING(3.46) | +---------------+ | 4 | +---------------+ 1 row in set (0.00 sec) mysql> Select CEILING(-6.43); +----------------+ | CEILING(-6.43) | +----------------+ | -6 | +----------------+ 1 row in set (0.02 sec)
FLOOR () hàm trả về giá trị số nguyên lớn nhất không lớn hơn X. Hãy xem xét ví dụ sau -
mysql> Select FLOOR(-6.43); +--------------+ | FLOOR(-6.43) | +--------------+ | -7 | +--------------+ 1 row in set (0.00 sec) mysql> Select FLOOR(3.46); +-------------+ | FLOOR(3.46) | +-------------+ | 3 | +-------------+ 1 row in set (0.00 sec)
ROUND () hàm trả về X được làm tròn thành số nguyên gần nhất. Nếu đối số thứ hai, D, được cung cấp, thì hàm trả về X được làm tròn thành D vị trí thập phân. D phải là số dương hoặc tất cả các chữ số ở bên phải của dấu thập phân sẽ bị xóa. Hãy xem xét ví dụ sau -
mysql>SELECT ROUND(5.693893); +---------------------------------------------------------+ | ROUND(5.693893) | +---------------------------------------------------------+ | 6 | +---------------------------------------------------------+ 1 row in set (0.00 sec) mysql>SELECT ROUND(5.693893,2); +---------------------------------------------------------+ | ROUND(5.693893,2) | +---------------------------------------------------------+ | 5.69 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
Từ định nghĩa và ví dụ trên, chúng ta có thể quan sát thấy sự khác biệt sau đây giữa ba hàm này -
- ROUND () hàm làm tròn số lên hoặc xuống phụ thuộc vào đối số thứ hai D và chính số đó (chữ số sau D vị trí thập phân> =5 hoặc không).
- TẦNG () hàm làm tròn số, về phía 0, luôn luôn đi xuống.
- TRẦN () hàm làm tròn số, khác 0, luôn luôn tăng.
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 | +----------------+--------------+----------------+ 1 row in set (0.00 sec)