Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Đếm số giá trị khác nhau (DISTINCT) trong cột MySQL

Kết hợp COUNT(DISTINCT ten_cot) để đếm số giá trị duy nhất trong một cột (bỏ qua trùng lặp và NULL).

Ví dụ minh họa

Tạo bảng:

mysql> CREATE TABLE DemoTable (Name VARCHAR(20), Score INT);

Chèn dữ liệu (có trùng lặp):

mysql> INSERT INTO DemoTable VALUES('John', 56), ('Sam', 89), ('John', 56), ('Carol', 60), ('Sam', 89), ('Carol', 60);

Xem dữ liệu:

mysql> SELECT * FROM DemoTable;

Kết quả

+-------+-------+
| Name  | Score |
+-------+-------+
| John  | 56    |
| Sam   | 89    |
| John  | 56    |
| Carol | 60    |
| Sam   | 89    |
| Carol | 60    |
+-------+-------+

Đếm số điểm khác nhau:

mysql> SELECT COUNT(DISTINCT Score) FROM DemoTable;

Kết quả

+-----------------------+
| COUNT(DISTINCT Score) |
+-----------------------+
| 3                     |
+-----------------------+

Lưu ý: COUNT(DISTINCT ...) bỏ qua NULL. Nếu muốn tính NULL như một giá trị riêng, dùng COUNT(DISTINCT IFNULL(cot, '__NULL__')).