สำหรับเรียงจากมากไปน้อย ใช้ DESC แต่ LIMIT ใช้จำกัดจำนวนแถวครับ
select * from yourTableName order by yourColumnName DESC LIMIT yourLimitNumber;
สร้างตารางตัวอย่าง
mysql> create table DemoTable (Id int, Name varchar(100)); Query OK, 0 rows affected (0.73 sec)
เพิ่มข้อมูลตัวอย่าง
mysql> insert into DemoTable values(100, 'John'); Query OK, 1 row affected (0.11 sec) mysql> insert into DemoTable values(101, 'Chris'); Query OK, 1 row affected (0.18 sec) mysql> insert into DemoTable values(102, 'Robert'); Query OK, 1 row affected (0.23 sec) mysql> insert into DemoTable values(103, 'Bob'); Query OK, 1 row affected (0.18 sec) mysql> insert into DemoTable values(104, 'Adam'); Query OK, 1 row affected (0.20 sec) mysql> insert into DemoTable values(105, 'James'); Query OK, 1 row affected (0.18 sec)
แสดงข้อมูลทั้งหมด
mysql> select * from DemoTable;
ผลลัพธ์
+------+--------+ | Id | Name | +------+--------+ | 100 | John | | 101 | Chris | | 102 | Robert | | 103 | Bob | | 104 | Adam | | 105 | James | +------+--------+ 6 rows in set (0.00 sec)
ดึง 3 แถว เรียงจากมากไปน้อย (Z-A)
mysql> select * from DemoTable order by Name DESC LIMIT 3;
ผลลัพธ์
+------+--------+ | Id | Name | +------+--------+ | 102 | Robert | | 100 | John | | 105 | James | +------+--------+ 3 rows in set (0.00 sec)
คำอธิบาย: ORDER BY Name DESC เรียงตัวอักษรจาก Z ถึง A LIMIT 3 จำกัด 3 แถวแรก