Skip to main content

SQL: Tùy biến cách sắp xếp trong câu lệnh ORDER BY

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:
SELECT * FROM Sales.Currency
 ORDER BY CurrencyCode 
Chú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
  END
Dù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

Comments

Popular posts from this blog

Lập trình đa luồng với Task

Bài viết được đăng trên Jou Lập trình
Trong phiên bản .NET framework 4.0, Microsoft đã bổ sung nhiều thư viện hỗ trợ việc xử lý đa luồng (multi-threading), nhằm đơn giản hóa việc lập trình lẫn hiệu suất của chương trình. Trong bài viết này, tôi xin hướng dẫn các bạn sử dụng lớp System.Threading.Task.

Tìm hiểu về IdentityServer 4

Trong bài viết này, mình sẽ hướng dẫn các bạn làm quen với thư viện Identity Server 4, và tích hợp các service In-Memory của Identity Server 4 vào Project Web API trong .NET Core.

[ASP.NET MVC] Authentication và Authorize

Một trong những vấn đề bảo mật cơ bản nhất là đảm bảo những người dùng hợp lệ truy cập vào hệ thống. ASP.NET đưa ra 2 khái niệm: Authentication và Authorize
Authentication xác nhận bạn là ai. Ví dụ: Bạn có thể đăng nhập vào hệ thống bằng username và password hoặc bằng ssh.
Authorization xác nhận những gì bạn có thể làm. Ví dụ: Bạn được phép truy cập vào website, đăng thông tin lên diễn đàn nhưng bạn không được phép truy cập vào trang mod và admin.