Mục tiêu
Sử dụng GROUP BY trên cột cần kiểm tra, kết hợp COUNT(*) để đếm số lần xuất hiện, và ORDER BY để sắp xếp giảm dần.
1. Tạo bảng
mysql> create table DemoTable (
Number int
);
Query OK, 0 rows affected (0.82 sec)
2. Chèn dữ liệu (có nhiều giá trị trùng)
mysql> insert into DemoTable values(90); mysql> insert into DemoTable values(100); mysql> insert into DemoTable values(110); mysql> insert into DemoTable values(90); mysql> insert into DemoTable values(100); mysql> insert into DemoTable values(90); mysql> insert into DemoTable values(120); mysql> insert into DemoTable values(100); mysql> insert into DemoTable values(90); mysql> insert into DemoTable values(120);
3. Xem dữ liệu
mysql> select * from DemoTable;
+--------+ | Number | +--------+ | 90 | | 100 | | 110 | | 90 | | 100 | | 90 | | 120 | | 100 | | 90 | | 120 | +--------+ 10 rows in set (0.00 sec)
4. Truy vấn đếm và sắp xếp
mysql> select count(*) as Occured from DemoTable group by Number order by Occured DESC;
Kết quả:
+---------+ | Occured | +---------+ | 4 | | 3 | | 2 | | 1 | +---------+ 4 rows in set (0.00 sec)
Ý nghĩa: Giá trị 90 xuất hiện 4 lần, 100 xuất hiện 3 lần, 120 xuất hiện 2 lần, 110 xuất hiện 1 lần.