ใช้ GROUP BY นับจำนวน แล้ว ORDER BY COUNT(*) DESC เรียงจากมากไปน้อย
สร้างตารางและเพิ่มข้อมูลซ้ำ
mysql> create table DemoTable783 ( FirstName varchar(100) );
Query OK, 0 rows affected (0.65 sec)
mysql> insert into DemoTable783 values('Adam'); Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable783 values('Chris'); Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable783 values('Chris'); Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable783 values('Adam'); Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable783 values('Adam'); Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable783 values('Robert'); Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable783 values('Robert'); Query OK, 1 row affected (0.22 sec)
mysql> insert into DemoTable783 values('Adam'); Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable783 values('Chris'); Query OK, 1 row affected (0.14 sec)
คิวรีนับและเรียง
mysql> select FirstName, count(*) from DemoTable783 group by FirstName order by count(*) desc;
+-----------+----------+ | FirstName | count(*) | +-----------+----------+ | Adam | 4 | | Chris | 3 | | Robert | 2 | +-----------+----------+ 3 rows in set (0.00 sec)
ประโยชน์: รายงานสถิติความถี่ของค่าในคอลัมน์ได้ในคำสั่งเดียว