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

MySQL ไม่มี ORDER BY เริ่มต้น ต้องระบุเองทุกครั้ง

MySQL ไม่มีลำดับเริ่มต้น (default ORDER BY) ผลลัพธ์อาจไม่เหมือนกันระหว่างการรัน ต้องระบุ ORDER BY ให้ชัดเจน

สร้างตารางตัวอย่าง

mysql> CREATE TABLE DemoTable (
    -> StudentName VARCHAR(100)
    -> );

เพิ่มข้อมูลตัวอย่าง

mysql> INSERT INTO DemoTable VALUES('Sam'), ('Chris'), ('David'), ('Bob'), ('Robert');

แสดงข้อมูลโดยไม่มี ORDER BY (ลำดับไม่แน่นอน)

mysql> SELECT * FROM DemoTable;

ผลลัพธ์ (อาจแตกต่างไป):

+-------------+
| StudentName |
+-------------+
| Sam         |
| Chris       |
| David       |
| Bob         |
| Robert      |
+-------------+

กรณี 1: เรียง A-Z (ASC)

mysql> SELECT * FROM DemoTable ORDER BY StudentName ASC;

ผลลัพธ์:

+-------------+
| StudentName |
+-------------+
| Bob         |
| Chris       |
| David       |
| Robert      |
| Sam         |
+-------------+

กรณี 2: เรียง Z-A (DESC)

mysql> SELECT * FROM DemoTable ORDER BY StudentName DESC;

ผลลัพธ์:

+-------------+
| StudentName |
+-------------+
| Sam         |
| Robert      |
| David       |
| Chris       |
| Bob         |
+-------------+

สรุป: ต้องระบุ ORDER BY ASC หรือ DESC ทุกครั้งที่ต้องการลำดับเฉพาะ ไม่ควรสมมติว่ามีลำดับเริ่มต้น