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

Đếm số lần xuất hiện của các giá trị cụ thể trong cột MySQL

Kết hợp WHERE ... IN (...) để lọc các giá trị quan tâm, sau đó GROUP BY và COUNT(*) để đếm tần suất của từng giá trị.

Ví dụ minh họa

Tạo bảng:

mysql> CREATE TABLE DemoTable (
    Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    Name VARCHAR(100)
);

Chèn dữ liệu:

mysql> INSERT INTO DemoTable(Name) VALUES('John');
mysql> INSERT INTO DemoTable(Name) VALUES('Chris');
mysql> INSERT INTO DemoTable(Name) VALUES('David');
mysql> INSERT INTO DemoTable(Name) VALUES('Chris');
mysql> INSERT INTO DemoTable(Name) VALUES('Chris');
mysql> INSERT INTO DemoTable(Name) VALUES('John');
mysql> INSERT INTO DemoTable(Name) VALUES('Carol');
mysql> INSERT INTO DemoTable(Name) VALUES('Sam');

Xem dữ liệu:

mysql> SELECT * FROM DemoTable;

Kết quả

+----+-------+
| Id | Name  |
+----+-------+
| 1  | John  |
| 2  | Chris |
| 3  | David |
| 4  | Chris |
| 5  | Chris |
| 6  | John  |
| 7  | Carol |
| 8  | Sam   |
+----+-------+

Đếm số lần xuất hiện của 'John' và 'Chris':

mysql> SELECT Name, COUNT(*) AS Occurrences
    -> FROM DemoTable
    -> WHERE Name IN ('John', 'Chris')
    -> GROUP BY Name;

Kết quả

+-------+-------------+
| Name  | Occurrences |
+-------+-------------+
| John  | 2           |
| Chris | 3           |
+-------+-------------+

Mở rộng: Bỏ mệnh đề WHERE để đếm tất cả giá trị trong cột.