SQL Server: ORDER BY
Giải phóng thời gian, khai phóng năng lực
Mệnh đề ORDER BY dùng để sắp xếp theo thứ tự tăng hoặc giảm các giá trị của một cột hoặc một tập cột.
Cú pháp:
ORDER BY Cột1 [ASC/DESC], Cột2 [ASC/DESC], Cột2 [ASC/DESC], ...
, trong đó ASC (Ascending) tức là tăng dần (đây là hướng sắp xếp mặc định, tức là nếu không có ASC hay DESC sau Cột thì mặc định sắp xếp là ASC-tăng dần), DESC (Descending) tức là giảm dần.
Sự ưu tiên sắp xếp dữ liệu tuân theo thứ tự cột bên trái trước, bên phải sau, nghĩa là dữ liệu của Cột1 được sắp xếp trước, nếu có giá trị trùng nhau thì sẽ chuyển sang sắp xếp dữ liệu ở Cột2, ...
Lưu ý rằng ORDER BY phải nằm sau mệnh đề GROUP BY.
Ví dụ:
Hiển thị danh sách Sinh viên trong đó cột studentname sắp xếp theo thứ tự tăng dần:
Select * from Student ORDER BY studentname;
Nếu bạn muốn xem danh sách Sinh viên với điểm số tương ứng tăng dần bạn làm như sau:
SELECT studentname,subjectname,mark FROM Student a JOIN Marks b on a.studentid=b.studentid JOIN Subjects c on b.subjectid=c.subjectid ORDER BY mark ASC;
Nếu bạn muốn xem danh sách Sinh viên với điểm số tương ứng giảm dần, và nếu có các giá trị điểm số trùng nhau của các Sinh viên thì sắp xếp tên Sinh viên theo thứ tự tăng dần bạn làm như sau:
SELECT studentname,subjectname,mark FROM Student a JOIN Marks b on a.studentid=b.studentid JOIN Subjects c on b.subjectid=c.subjectid ORDER BY mark DESC, studentname ASC;
Giải phóng thời gian, khai phóng năng lực