คีย์เวิร์ด ORDER BY ใช้สำหรับจัดเรียงข้อมูลที่เราดึงออกมาจากฐานข้อมูล โดยสามารถระบุได้ว่า จะให้จัดเรียงจากน้อยไปหามาก หรือจากมากไปหาน้อย ถ้าไม่มีการระบุ ข้อมูลจะจัดเรียงจากน้อยไปหามาก
รูปแบบไวยากรณ์
SELECT column_name(s) FROM TABLE_NAME ORDER BY column_name(s) ASC|DESC |
ตัวอย่าง
The “Persons” table:
P_Id | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | Hansen | Ola | Timoteivn 10 | Sandnes |
2 | Svendson | Tove | Borgvn 23 | Sandnes |
3 | Pettersen | Kari | Storgt 20 | Stavanger |
4 | Nilsen | Tom | Vingvn 23 | Stavanger |
ถ้าเราต้องการดึงข้อมูลทั้งจากตารางด้านบนและให้จัดเรียงตาม LastName จากน้อยไปหามาก ให้ใช้คำสั่งดังนี้
SELECT * FROM Persons ORDER BY LastName ASC |
หรือ
SELECT * FROM Persons ORDER BY LastName |
ผลลัพธ์ที่ได้จะเป็นดังนี้ LastName จะถูกเรียงจากตัวอักษร a-Z ถ้าตัวอักษรตัวแรกเหมือนกัน มันจะไปดูตัวอักษรตัวที่สองเป็นลำดับถัดไป ว่าตัวไหนน้อยกว่า
P_Id | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | Hansen | Ola | Timoteivn 10 | Sandnes |
4 | Nilsen | Tom | Vingvn 23 | Stavanger |
3 | Pettersen | Kari | Storgt 20 | Stavanger |
2 | Svendson | Tove | Borgvn 23 | Sandnes |
ตัวอย่างแบบอื่นๆ
เรียง LastName มากไปหาน้อย
SELECT * FROM Persons ORDER BY LastName DESC |
จะเีรียงหลายๆฟิลด์ก็ได้
SELECT * FROM Persons ORDER BY LastName DESC , FirstName ASC |
ธนาวัฒน์ คงวัฒนา says:
11/08/2553 at 11/08/2553
ขอให้ความเคารพแต่เว้บไซด์ที่ได้ให้สาระดี ๆ และมีประโยชน์ในยามคนโฉดเปลี่ยวเหงาและเฝ้าถึงสิ่งที่ไม่อาจจะเป็นจริงได้สักที
ขอขอบคุณ