Sử dụng biểu thức boolean SUM(isTopper='no') để đếm số lần xuất hiện của giá trị 'NO' trong cột ENUM, nhóm theo tên.
Ví dụ minh họa
Tạo bảng với cột ENUM:
mysql> CREATE TABLE DemoTable1829 (
Name VARCHAR(20),
isTopper ENUM('YES','NO')
);
Chèn dữ liệu:
mysql> INSERT INTO DemoTable1829 VALUES('Chris','yes'),('David','yes'),('Mike','no'),('David','yes');
Truy vấn đếm số 'NO' theo từng tên:
mysql> SELECT Name, SUM(isTopper='no') FROM DemoTable1829 GROUP BY Name;
Kết quả:
+-------+--------------------+ | Name | sum(isTopper='no') | +-------+--------------------+ | Chris | 0 | | David | 0 | | Mike | 1 | +-------+--------------------+
Giải thích: Trong MySQL, biểu thức so sánh trả về 1 (true) hoặc 0 (false). SUM() cộng dồn các giá trị 1 này cho thấy số lần khớp.