ORDER BY dùng để sắp xếp kết quả trả về bởi câu lệnh SELECT. Thỉnh thoáng, bạn cần tùy biến cách sắp xếp, không phải theo cách thông thường như ABC, 123…
VD: Chúng ta có bảng Currency dùng để liệt kê tiền tệ của các nước
Do phổ biến của USD, EUR và JPY, chúng ta muốn chúng xuất hiện đầu tiên. Các đơn vị tiền tệ khác sẽ xuất hiện sau và theo thứ tự ABC.
Thay vì viết:
Kết quả sẽ là:
VD: Chúng ta có bảng Currency dùng để liệt kê tiền tệ của các nước
Do phổ biến của USD, EUR và JPY, chúng ta muốn chúng xuất hiện đầu tiên. Các đơn vị tiền tệ khác sẽ xuất hiện sau và theo thứ tự ABC.
Thay vì viết:
SELECT * FROM Sales.Currency ORDER BY CurrencyCodeChúng ta sẽ viết:
SELECT * FROM Sales.Currency ORDER BY CASE WHEN CurrencyCode = 'USD' THEN NULL WHEN CurrencyCode = 'EUR' THEN 'AAA' WHEN CurrencyCode = 'JPY' THEN 'AAB' ELSE CurrencyCode ENDDùng câu lệnh CASE để tùy biến lại cách sắp xếp.
Kết quả sẽ là:
Lưu ý:
Nếu bạn muốn trả về giá trị nào đó ở đầu danh sách sắp xếp, bạn dùng NULL.
Chúc các bạn thành công
Nhận xét
Đăng nhận xét