Sử dụng COUNT() với GROUP BY để đếm tần suất, sau đó ORDER BY count DESC để sắp xếp từ nhiều đến ít.
Tạo bảng và dữ liệu nhân viên
mysql> CREATE TABLE DemoTable (EmployeeName VARCHAR(100)); Query OK, 0 rows affected (0.85 sec)
mysql> INSERT INTO DemoTable VALUES('Sam'), ('David'), ('David'), ('Chris'), ('Robert'), ('Chris'), ('Sam'), ('Sam'), ('David'), ('Robert'), ('David'), ('Chris');
Query OK, 12 rows affected (0.17 sec)
Truy vấn đếm và sắp xếp
mysql> SELECT EmployeeName, COUNT(EmployeeName) AS Total
-> FROM DemoTable
-> GROUP BY EmployeeName
-> ORDER BY Total DESC;
Kết quả:
+--------------+-------+ | EmployeeName | Total | +--------------+-------+ | David | 4 | | Chris | 3 | | Sam | 3 | | Robert | 2 | +--------------+-------+ 4 rows in set (0.00 sec)
Mở rộng: Thêm LIMIT 1 để lấy giá trị xuất hiện nhiều nhất (mode).