Mệnh đề ORDER BY trong MySQL là công cụ quan trọng giúp bạn sắp xếp kết quả truy vấn theo một hoặc nhiều cột. Trong bài viết này, chúng ta sẽ tìm hiểu cách sử dụng mệnh đề ORDER BY để tổ chức dữ liệu theo thứ tự mà bạn mong muốn.
Cấu trúc cơ bản của mệnh đề ORDER BY trong câu lệnh SELECT như sau:
SELECT column1, column2, ... FROM table_name ORDER BY column1 [ASC|DESC], column2 [ASC|DESC], ...;
ASC: Sắp xếp theo thứ tự tăng dần (mặc định).DESC: Sắp xếp theo thứ tự giảm dần.Giả sử bạn có một bảng tên là employees, với các cột là employee_id, first_name, last_name, và salary. Để sắp xếp danh sách nhân viên theo last_name theo thứ tự tăng dần, bạn sẽ sử dụng mệnh đề ORDER BY như sau:
SELECT * FROM employees ORDER BY last_name;
Bạn cũng có thể sắp xếp theo nhiều cột bằng cách chỉ định các cột trong mệnh đề ORDER BY. Giả sử bạn muốn sắp xếp theo department và sau đó theo salary theo thứ tự giảm dần, bạn có thể viết như sau:
SELECT * FROM employees ORDER BY department, salary DESC;
Trong ví dụ này, các nhân viên sẽ được sắp xếp theo department trước, và trong mỗi phòng ban, họ sẽ được sắp xếp theo salary từ cao đến thấp.
Ngoài việc sắp xếp theo cột, bạn cũng có thể sử dụng các điều kiện khác nhau để sắp xếp dữ liệu. Ví dụ, nếu bạn chỉ muốn lấy những nhân viên có mức lương lớn hơn 50000 và sắp xếp theo salary, bạn có thể kết hợp WHERE với ORDER BY như sau:
SELECT * FROM employees WHERE salary > 50000 ORDER BY salary;
Mệnh đề ORDER BY thường được sử dụng cùng với LIMIT để lấy một số lượng bản ghi nhất định từ kết quả truy vấn. Ví dụ, để lấy 5 nhân viên có mức lương cao nhất, bạn có thể viết như sau:
SELECT * FROM employees ORDER BY salary DESC LIMIT 5;
Mệnh đề ORDER BY là một công cụ mạnh mẽ trong MySQL cho phép bạn sắp xếp kết quả truy vấn theo thứ tự mà bạn mong muốn. Bằng cách sử dụng ORDER BY, bạn có thể tổ chức dữ liệu của mình một cách hiệu quả, giúp cho việc phân tích và trình bày thông tin trở nên dễ dàng hơn.