Toán tử chia (/) trong MySQL
Dấu gạch chéo / trong MySQL là toán tử chia (division). Nó được dùng để chia hai số hoặc giá trị của hai cột, kết quả trả về kiểu số thực (decimal).
Ví dụ minh họa
Tạo bảng DemoTable719:
mysql> CREATE TABLE DemoTable719 (
FirstNumber INT,
SecondNumber INT
);
Query OK, 0 rows affected (0.57 sec)
Chèn dữ liệu:
mysql> INSERT INTO DemoTable719 VALUES(20, 10); Query OK, 1 row affected (0.18 sec) mysql> INSERT INTO DemoTable719 VALUES(500, 50); Query OK, 1 row affected (0.22 sec) mysql> INSERT INTO DemoTable719 VALUES(400, 20); Query OK, 1 row affected (0.11 sec)
Xem dữ liệu:
mysql> SELECT * FROM DemoTable719;
+-------------+--------------+ | FirstNumber | SecondNumber | +-------------+--------------+ | 20 | 10 | | 500 | 50 | | 400 | 20 | +-------------+--------------+ 3 rows in set (0.00 sec)
Thực hiện phép chia và hiển thị kết quả trong cột mới:
mysql> SELECT *, FirstNumber / SecondNumber AS Result FROM DemoTable719;
Kết quả:
+-------------+--------------+---------+ | FirstNumber | SecondNumber | Result | +-------------+--------------+---------+ | 20 | 10 | 2.0000 | | 500 | 50 | 10.0000 | | 400 | 20 | 20.0000 | +-------------+--------------+---------+ 3 rows in set (0.00 sec)
Lưu ý quan trọng
- Kết quả luôn là số thực (decimal), kể cả khi chia hết
- Chia cho 0 sẽ trả về
NULL(không báo lỗi):SELECT 10/0; -- NULL - Để làm tròn: sử dụng
ROUND(),FLOOR(),CEIL() - Để chia nguyên (lấy phần nguyên): sử dụng
DIVoperator:SELECT 10 DIV 3; -- 3
Ví dụ bổ sung
-- Làm tròn 2 chữ số thập phân SELECT ROUND(FirstNumber / SecondNumber, 2) AS Result FROM DemoTable719; -- Phép chia nguyên SELECT FirstNumber DIV SecondNumber AS IntResult FROM DemoTable719; -- Xử lý chia cho 0 an toàn SELECT CASE WHEN SecondNumber = 0 THEN NULL ELSE FirstNumber / SecondNumber END AS SafeResult FROM DemoTable719;