คำสั่ง ORDER BY เป็นคำสั่งที่ใช้สำหรับจัดเรียงข้อมูลที่ดึงออกจากฐานข้อมูล การจัดเรียงสามารถทำได้ทั้งจากน้อยไปหามาก และจากมากไปหาน้อย โดยค่าดีฟอลต์อยู่ที่เรียงจากน้อยไปหามาก ได้ทั้งตัวเลขและตัวหนังสือ
ไวยากรณ์
SELECT column_name(s) FROM TABLE_NAME ORDER BY column_name(s) ASC|DESC |
ตัวอย่างดึงข้อมูลเรียงจากน้อยไปหามาก
SELECT * FROM administrator ORDER BY administrator_name |
ดึงข้อมูลจากตาราง administrator โดยเรียงลำดับผลลัพธ์ตามฟิลด์ administrator_name ชื่อผู้ดูแลระบบ น้อยไปหามาก
จะเห็นว่าเราไม่ต้องระบุคีย์เวิร์ด ASC หลัง ORDER BY ก็ได้ เพราะค่าดีฟอลต์มันอยู่ที่ ASC อยู่แล้ว
ตัวอย่างดึงข้อมูลเรียงจากน้อยไปหามาก
SELECT * FROM administrator ORDER BY administrator_name ASC |
ให้ผลลัพธ์เดียวกับคำสั่งด้านบน
ดึงข้อมูลจากตาราง administrator โดยเรียงลำดับผลลัพธ์ตามฟิลด์ administrator_name ชื่อผู้ดูแลระบบ น้อยไปหามาก
ตัวอย่างดึงข้อมูลเรียงจากมากไปหาน้อย
SELECT * FROM administrator ORDER BY administrator_name DESC |
ดึงข้อมูลจากตาราง administrator โดยเรียงลำดับผลลัพธ์ตามฟิลด์ administrator_name ชื่อผู้ดูแลระบบ มากไปหาน้อย
ASC นั้นย่อมาจาก Ascending
DESC นั้นย่อมาจาก Descending
สิ่งหนึ่งที่อยากจะบอกไว้ทิ้งท้ายก็คือ ภาษา SQL นั้นจะไม่สนใจเรื่องอักษรตัวเล็ก-ตัวใหญ่ DESC จะมีความหมายเหมือนกับเขียน desc
ถึงแม้ว่าท่านเขียนโปรแกรมติดต่อฐานข้อมูลด้วยภาษา PHP ที่มันให้ความสำคัญกับตัวเล็กตัวใหญ่ แต่ในคำสั่ง SQL ก็ไม่ต้องสนใจตัวเล็กตัวใหญ่
SELECT * FROM administrator ORDER BY administrator_name ASC // เขียนอย่างนี้ก็ได้เหมือนกัน SELECT * FROM administrator ORDER BY administrator_name ASC |
แต่ขอแนะนำว่า ให้เขียน SQL ด้วยอักษรตัวใหญ่ทั้งหมด เพื่อง่ายในการอ่าน ก็ลองดูจากตัวอย่างด้านบนละกัน แบบไหนอ่านง่ายกว่า
Leave a Reply