Sắp xếp thứ tự với từ khóa ORDER BY trong SQL

Khi sử dụng dữ liệu để phân tích, thống kê hoặc hiển thị lên các website, việc sắp xếp theo thứ tự là một tính năng rất hữu ích. Bạn có thể làm điều này chỉ với từ khóa ORDER BY.

1. Từ khóa ORDER BY

Từ khóa ORDER BY được sử dụng để sắp xếp kết quả theo thứ tự tăng dần hoặc giảm dần.

Trong đó, thứ tự mặc định sẽ là tăng dần (nếu người dùng không khai báo). Trường hợp muốn sắp xếp theo thứ tự giảm dần, chỉ cần thêm từ khóa DESC.

  • Cú pháp của ORDER BY

SELECT cột 1, cột 2,…

FROM tên cột

ORDER BY cột 1, cột 2,… ASC|DESC;

Trong đó:

ASC – ascending: tăng dần

DESC – descending: giảm dần

2. Ví dụ ORDER BY

Để thực hiện ví dụ này, bạn cần nhập cơ sở dữ liệu mẫu Northwind vào SQL Server Management Studio. Hãy xem bài viết hướng dẫn ngay dưới đây:

Tham khảo: Hướng dẫn tải và cài đặt dữ liệu mẫu Northwind trong SQL Server Management Studio

Câu lệnh SQL dưới đây sẽ lấy tất cả dữ liệu khách hàng từ bảng Customers và hiển thị dưới dạng danh sách tăng dần dựa theo cột Country (vì lúc này không khai báo ASC hay DESC). Chú ý cột Country trong kết quả, thứ tự sắp xếp sẽ theo bảng chữ cái.

SELECT * FROM Customers

ORDER BY Country;

3. Ví dụ ORDER BY DESC

Câu lệnh SQL dưới đây sẽ lấy tất cả dữ liệu khách hàng từ bảng Customers và hiển thị dưới dạng danh sách giảm dần dựa theo cột Country. Chú ý cột Country trong kết quả, thứ tự đã đảo ngược so với ví dụ trên.

SELECT * FROM Customers

ORDER BY Country DESC;

4. Ví dụ ORDER BY nhiều cột

Câu lệnh SQL dưới đây sẽ lấy tất cả dữ liệu khách hàng từ bảng Customers dựa theo cột Country và CompanyName. Điều này có nghĩa là nó sẽ sắp xếp theo cột Country trước, nếu có hàng nào giá trị Country giống nhau sẽ tiếp tục dựa vào CompanyName để sắp xếp. Chú ý hai cột này trong bảng kết quả.

SELECT * FROM Customers

ORDER BY Country, CompanyName;

Một ví dụ khác về việc sử dụng từ khóa ORDER BY nhiều cột. Câu lệnh dưới đây sẽ lấy tất cả dữ liệu khách hàng từ bảng Customers sắp xếp tăng dần dựa theo cột Country nếu có giá trị Country nào trùng nhau sẽ tiếp tục dựa vào CompanyName để sắp xếp nhưng theo chiều ngược lại. Hãy chú ý vào hai cột này trong bảng kết quả.

SELECT * FROM Customers

ORDER BY Country ASC, CompanyName DESC;

Qua bài viết này hy vọng các bạn đã có thể tự mình sắp xếp các kết quả hiển thị theo mong muốn. Bằng cách sử dụng linh hoạt các hàm đã học, BAC tin chắc rằng các bạn sẽ sớm làm chủ được dữ liệu. Đừng quên đón đọc các bài viết mới nhất tại website bacs.vn để cập nhật các nội dung mới nhất về SQL.

Nguồn tham khảo:

https://www.w3schools.com/

Nhu cầu đào tạo doanh nghiệp

BAC là đơn vị đào tạo BA đầu tiên tại Việt Nam. Đối tác chính thức của IIBA quốc tế. Ngoài các khóa học public, BAC còn có các khóa học in house dành riêng cho từng doanh nghiệp. Chương trình được thiết kế riêng theo yêu cầu của doanh nghiệp, giúp doanh nghiệp giải quyết những khó khăn và tư vấn phát triển.

Tham khảo chương trình đào tạo: 

Các bài viết liên quan SQL: 

Các bài viết liên quan Power BI: 

Các bài viết liên quan: 

  • TABLEAU – Giải pháp BUSINESS INTELLIGENCE (BI) – click vào đây
  • Hướng dẫn cài đặt và Sử dụng TABLEAU – click vào đây
  • Tính năng mới trên tableau – verion 2019.1 – click vào đây

BAC – Biên soạn và tổng hợp nội dung

 

Previous Post
Next Post