Vấn đề:
Bạn muốn giới hạn số hàng do truy vấn trong T-SQL.
Ví dụ:
Trong exam
bảng, có tên của học sinh với kết quả của kỳ thi.
name | exam_result |
---|---|
Janet Morgen | 9 |
Taya Bain | 11 |
Anne Johnson | 11 |
Josh Kaur | 10 |
Ellen Thornton | 8 |
Bạn muốn có được ba hàng với kết quả kiểm tra tốt nhất.
Giải pháp:
SELECT TOP 3 * FROM exam ORDER BY exam_result DESC;
Kết quả của truy vấn trông giống như sau:
name | exam_result |
---|---|
Taya Bain | 11 |
Anne Johnson | 11 |
Josh Kaur | 10 |
Thảo luận:
Sau SELECT
từ khóa, sử dụng TOP
từ khóa cùng với số hàng bạn muốn truy xuất (tại đây, 3
). Hãy nhớ sắp xếp các hàng theo exam_result
theo thứ tự giảm dần bằng cách sử dụng ORDER BY
và mệnh đề DESC
từ khóa.
SELECT TOP 3 * FROM exam ORDER BY exam_result DESC;
Nếu bạn muốn lấy ngẫu nhiên ba hàng thay vì ba hàng tốt nhất, hãy bỏ qua ORDER BY
một phần.
SELECT TOP 3 * FROM exam;
Tất nhiên, bạn có thể lấy bất kỳ số hàng nào bạn muốn. Chỉ cần thay thế 3
với số lượng mong muốn của bạn.