Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

ดึงจำนวนแถวคงที่ เรียงจากมากไปน้อยใน MySQL

สำหรับเรียงจากมากไปน้อย ใช้ 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 แถวแรก