ใช้ GROUP BY รวมค่าซ้ำ แล้ว ORDER BY FIELD() กำหนดลำดับเฉพาะเจาะจง
สร้างตารางและเพิ่มข้อความซ้ำ
mysql> create table DemoTable ( Message text );
Query OK, 0 rows affected (1.15 sec)
mysql> insert into DemoTable values('Good'); Query OK, 1 row affected (0.43 sec)
mysql> insert into DemoTable values('Bye'); Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable values('Awesome'); Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable values('Bye'); Query OK, 1 row affected (0.08 sec)
mysql> insert into DemoTable values('Good'); Query OK, 1 row affected (0.23 sec)
mysql> insert into DemoTable values('Amazing'); Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable values('Awesome'); Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable values('Bye'); Query OK, 1 row affected (0.12 sec)
คิวรี GROUP BY แล้ว ORDER BY FIELD
mysql> select * from DemoTable group by Message order by field(Message,'Amazing','Awesome','Good','Bye');
+---------+ | Message | +---------+ | Amazing | | Awesome | | Good | | Bye | +---------+ 4 rows in set (0.04 sec)
FIELD() คืนตำแหน่งของค่าในรายการ (1-based) ใช้สั่งลำดับได้ตามใจชอบ