ส่วนคำสั่ง ORDER BY ใน Access เรียงลำดับระเบียนผลลัพธ์ของคิวรีในเขตข้อมูลที่ระบุหรือเขตข้อมูลจากน้อยไปมากหรือมากไปน้อย
ไวยากรณ์
SELECT fieldlist
FROM table WHERE selectcriteria [ORDER BY field1 [ASC | DESC ][, field2 [ASC | DESC ]][, ...]]]คำสั่ง SELECT ที่มีส่วนคำสั่ง ORDER BY มีส่วนต่างๆ ดังนี้:
ส่วน |
คำอธิบาย |
fieldlist |
ชื่อของเขตข้อมูลหนึ่งหรือหลายเขตข้อมูลที่จะถูกดึงออกมาพร้อมกันกับนามแฝงของชื่อเขตข้อมูลใดๆ , ฟังก์ชันการรวมของ SQL, เพรดิเคตการเลือก (ALL, DISTINCT, DISTINCTROW หรือ TOP) หรือตัวเลือกอื่นๆ ของคำสั่ง SELECT |
table |
ชื่อของตารางที่ระเบียนถูกดึงออกมา |
selectcriteria |
เกณฑ์การเลือก ถ้าคําสั่งมีส่วนคําสั่ง WHERE กลไกจัดการฐานข้อมูล Microsoft Access จะเรียงลําดับค่าหลังจากนําเงื่อนไข WHERE ไปใช้กับระเบียนแล้ว |
เขตข้อมูล 1, เขตข้อมูล 2 |
ชื่อของเขตข้อมูลที่จะเรียงลำดับระเบียน |
ข้อสังเกต
ORDER BY จะมีหรือไม่ก็ได้ อย่างไรก็ตาม ถ้าคุณต้องการให้ข้อมูลของคุณแสดงตามลําดับการจัดเรียง คุณต้องใช้ ORDER BY
ลำดับการจัดเรียง เริ่มต้นจากน้อยไปหามาก (A ถึง Z, 0 ถึง 9) ตัวอย่างทั้งสองตัวอย่างต่อไปนี้เรียงลําดับชื่อพนักงานในลําดับนามสกุล:
SELECT LastName, FirstName
FROM Employees ORDER BY LastName;
SELECT LastName, FirstName
FROM Employees ORDER BY LastName ASC;
เมื่อต้องการเรียงลําดับจากมากไปหาน้อย (Z ถึง A, 9 ถึง 0) ให้เพิ่มคําสงวน DESC ลงในส่วนท้ายของแต่ละเขตข้อมูลที่คุณต้องการเรียงลําดับจากมากไปหาน้อย ตัวอย่างต่อไปนี้จะเลือกเงินเดือนและเรียงลําดับเงินเดือนจากมากไปหาน้อย:
SELECT LastName, Salary
FROM Employees ORDER BY Salary DESC, LastName;
ถ้าคุณระบุเขตข้อมูลที่มีข้อมูล Memo หรือ OLE Object ในส่วนคําสั่ง ORDER BY จะเกิดข้อผิดพลาดขึ้น กลไกจัดการฐานข้อมูลของ Microsoft Access จะไม่เรียงลําดับตามเขตข้อมูลของชนิดเหล่านี้
ORDER BY มักจะเป็นรายการสุดท้ายในคำสั่ง SQL
คุณสามารถรวมเขตข้อมูลเพิ่มเติมในส่วนคําสั่ง ORDER BY ได้ ระเบียนจะถูกเรียงลําดับก่อนตามเขตข้อมูลแรกที่แสดงรายการหลังจาก ORDER BY ระเบียนที่มีค่าเท่ากันในเขตข้อมูลนั้นจะถูกเรียงลําดับตามค่าในเขตข้อมูลที่สองที่แสดงในรายการ และอื่นๆ