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

Đếm số lượng distinct của các mục cụ thể trong danh sách MySQL

Sử dụng COUNT() kết hợp GROUP BY và điều kiện LIKE để đếm số lần xuất hiện của các giá trị có tiền tố chung.

Ví dụ minh họa

Tạo bảng và chèn dữ liệu:

mysql> CREATE TABLE DemoTable1854 (Name VARCHAR(20));
mysql> INSERT INTO DemoTable1854 VALUES('John-Smith'),('Chris-Brown'),('Adam-Smith'),('John-Doe'),('John-Smith');

Đếm các tên bắt đầu bằng 'John-':

mysql> SELECT Name, COUNT(Name) FROM DemoTable1854
    WHERE Name LIKE 'John-%'
    GROUP BY Name;

Kết quả:

+------------+-------------+
| Name       | count(Name) |
+------------+-------------+
| John-Smith |           2 |
| John-Doe   |           1 |
+------------+-------------+

Mẹo: Dùng COUNT(DISTINCT Name) nếu muốn đếm số giá trị duy nhất (không trùng lặp) trong toàn bảng.