Devdit
 

ORDER BY คืออะไร?

1.8K

ORDER BY คือคำสั่งของ SQL ที่ใช้สำหรับเรียงลำดับของข้อมูลจากคำสั่ง SELECT โดย ORDER BY clause จะแบ่งการเรียงลำดับข้อมูลเป็น 2 กรณี คือ ASC และ DESC โดย ASC (Ascending) คือเรียงจากน้อยไปหามาก และ DESC (Descending) คือเรียงจากมากไปหาน้อย บทความนี้จะสอนการใช้ ORDER BY ร่วมกับ ASC และ DESC สามารถเขียนคำสั่ง SQL ได้ดังนี้

 

ตัวอย่าง ORDER BY คืออะไร?

ORDER BY [column1 [ASC, DESC]], [column2 [ASC, DESC]], ... 

จากตัวอย่างคือการใช้คำสั่ง ORDER BY เพื่อเรียงลำดับข้อมูลของคอลัมน์ที่ต้องการ โดยสามารถเรียงลำดับได้มากกว่า 1 คอลัมน์พร้อมกัน โดยการใช้เครื่องหมายลูกน้ำ (,) คั่นแต่ละคอลัมน์ และกำหนด ASC สำหรับเรียงจากน้อยไปหามาก และ DESC สำหรับเรียงจากมากไปหาน้อย หลังชื่อคอลัมน์ ดังกล่าว

 

ตัวอย่าง ORDER BY แบบ ASC เรียงลำดับจากน้อยไปหามาก

SELECT id, name, price
FROM
products
ORDER BY price ASC

จากตัวอย่างแสดงข้อมูลทั้งหมดจากตาราง products โดยเรียงข้อมูลจากคอลัมน์ price (ราคา) จากน้อยไปหามาก ด้วยคำสั่ง ORDER BY price ASC

 

ตัวอย่าง ORDER BY แบบ DESC เรียงลำดับจากมากไปหาน้อย

SELECT id, name, price
FROM
products
ORDER BY price DESC

จากตัวอย่างแสดงข้อมูลทั้งหมดจากตาราง products โดยเรียงข้อมูลจากคอลัมน์ price (ราคา) จากมากไปหาน้อย ด้วยคำสั่ง ORDER BY price DESC

 

ตัวอย่าง ORDER BY แบบผสมทั้ง ASC และ DESC

SELECT id, name, price
FROM
products
ORDER BY price DESC, id ASC

จากตัวอย่างแสดงข้อมูลทั้งหมดจากตาราง products โดยเรียงข้อมูลจากคอลัมน์ price (ราคา) จากมากไปหาน้อย ด้วยคำสั่ง ORDER BY price DESC และกรณีถ้า price เท่ากันให้เรียงลำดับจากคอลัมน์ id (รหัสสินค้า) จากน้อยไปหามาก ด้วย ORDER BY price DESC, id ASC

 

สรุป ORDER BY clause เป็นคำสั่ง SQL ที่มีประโยชน์อย่างมากสำหรับการเรียงลำดับข้อมูลจากคอลัมน์ที่ต้องการ โดยมีการเรียง 2 แบบคือ ASC น้อยไปหามาก และ DESC มากไปหาน้อย อีกทั้งยังรองรับการเรียงลำดับของคอลัมน์มากกว่า 1 คอลัมน์พน้อมกันอีกด้วย

แก้ไข 1 ปีที่แล้ว
ชอบ
ลิ้งก์
แชร์
Devdit มีช่อง YouTube แล้ว
เราสร้างวิดีโอเกี่ยวกับเทคโนโลยี ทำตามง่ายๆ