Thông tin liên hệ
- 036.686.3943
- admin@nguoicodonvn2008.info
SELECT TOP trong SQL Server là gì? Bạn có thể select top 1 trong SQL Server dễ dàng nếu biết sử dụng lệnh này. Sau đây là hướng dẫn chi tiết.
Trong khi truy xuất dữ liệu từ một bảng SQL, mệnh đề LIMIT được dùng để hạn chế số hàng trong nhóm kết quả. Tương tự, nếu bạn triển khai các tác vụ như cập nhật, phát hiện…, nó được dùng để hạn chế các bản ghi mục tiêu.
SQL Server không hỗ trợ mệnh đề LIMIT. Thay vào đó, nó cung cấp câu lệnh TOP trong SQL Server để hạn chế số hàng trong một bảng. Hàm TOP trong SQL Server tương tự như lệnh LIMIT.
Lệnh SELECT TOP hữu ích khi bạn cần hoạt động trên các bảng lớn với hàng nghìn bản ghi để lấy giá trị cần thiết. Trong những trường hợp như thế, trả về một số lượng lớn bản ghi có thể ảnh hưởng tới hiệu suất hoạt động.
Lưu ý, không phải tất cả hệ thống database đều cho phép dùng lệnh TOP để chọn một số lượng bản ghi hạn chế. Ví dụ, MySQL hỗ trợ lệnh LIMIT, còn Orcale hỗ trợ lệnh ROWNUM.
Dưới đây là chi tiết cách dùng SELECT TOP trong SQL Server.
Trong SQL Server, lệnh SELECT TOP được dùng để lấy bản ghi từ 1 hoặc nhiều bảng trong SQL Server và giới hạn số bản ghi trả về dựa trên giá trị hoặc phần trăm cố định.
SELECT TOP (giatri_dau) [PERCENT] [WITH TIES]bieu_thucFROM bang[WHERE dieu_kien][ORDER BY bieu_thuc [ ASC | DESC ]];
TOP (giatri_dau)
Trả về kết quả dựa trên giatri_dau. Ví dụ TOP(10) sẽ chèn 10 hàng đầu tiên từ bộ kết quả.
PERCENT
Tùy chọn. Nếu được nêu ra cụ thể thì các hàng đầu tiên dựa trên số phần trăm giatri_dau của bộ kết quả. Ví dụ như TOP(10) PERCENT sẽ chèn 10% giá trị đầu trong bộ kết quả.
WITH TIES
Tùy chọn. Nếu dùng mệnh đề này, các hàng có giá trị giống với hàng cuối cùng trong bộ kết quả sẽ được trả về. Điều này có thể gây ra tình huống số hàng trả về nhiều hơn biến TOP cho phép.
bieu_thuc
Cột hoặc giá trị tính toán cần lấy về
bang
Bảng muốn lấy bản ghi từ đó. Phải có ít nhất 1 bảng trong mệnh đề FROM.
WHERE dieu_kien
Tùy chọn. Điều kiện phải được đáp ứng để bản ghi được chọn.
ORDER BY bieu_thuc
Tùy chọn. Dùng để xếp thứ tự kết quả. ASC theo thứ tự tăng dần, DESC theo thứ tự giảm dần.
Với tương thích ngược, dấu ngoặc đơn là tùy chọn trong câu lệnh SELECT nếu biểu thức là một hằng số nguyên. Bạn nên sử dụng dấu ngoặc đơn cho TOP trong các câu lệnh SELECT. Làm như vậy sẽ đảm bảo tính nhất quán trong khi sử dụng các câu lệnh INSERT, UPDATE, MERGE và DELETE cần thiết.
Khi dùng TOP với INSERT, UPDATE, MERGE hoặc DELETE, các hàng tham chiếu không được sắp xếp theo thứ tự. Và bạn không thể trực tiếp chỉ định mệnh đề ORDER BY trong những câu lệnh này. Nếu cần dùng TOP để chèn, xóa hoặc chỉnh sửa hàng theo thứ tự thời gian cần thiết, dùng TOP với mệnh đề ORDER BY được chỉ định ở lệnh chọn phụ.
Bạn không thể dùng TOP trong lệnh UPDATE và DELETE trên các trình xem được phân vùng. Bạn cũng không thể kết hợp TOP với OFFSET và FETCH trong cùng một biểu thức truy vấn.
|
Danh mục |
Thành phần cú pháp |
|
Cú pháp cơ bản |
TOP • PERCENT |
|
Bao gồm các giá trị ràng buộc |
WITH TIES |
|
Hạn chế các hàng bị ảnh hưởng bởi DELETE, INSERT, hoặc UPDATE |
DELETE • INSERT • UPDATE |
Ví dụ - dùng từ khóa TOP
SELECT TOP(5)nhanvien_id, ho, tenFROM nhanvienWHERE ho = ‘Anderson’ORDER BY nhanvien_id;
Ví dụ trên sẽ lấy về 5 bản ghi đầu tiên trên bảng nhanvien khi có họ là Anderson. Nếu các bản ghi khác cũng có họ nhân viên là Anderson thì cũng không được trả về trong lệnh SELECT trên.
Ví dụ trên có thể chỉnh sửa 1 chút bằng cách thêm mệnh đề WITH TIES
SELECT TOP(5) WITH TIESnhanvien_id, ho, tenFROM nhanvienWHERE ho = ‘Anderson’ORDER BY nhanvien_id;
Ví dụ này sẽ trả về các hàng giống với hàng cuối trong bộ kết quả.
Ví dụ - dùng từ khóa TOP PERCENT
SELECT TOP(10) PERCENT nhanvien_id, ho, tenFROM nhanvienWHERE ho = ‘Anderson’ORDER BY nhanvien_id;
Ví dụ này sẽ trả về bộ kết quả là 10% đầu tiên bản ghi trong bảng nhân viên trong số các nhân viên có họ là Anderson. 90% còn lại sẽ không được trả về.
SELECT TOP(10) PERCENT WITH TIES nhanvien_id, ho, tenFROM nhanvienWHERE ho = ‘Anderson’ORDER BY nhanvien_id;
Với WITH TIES, kết quả trả về sẽ có các hàng giống với hàng cuối trong bộ kết quả. Bộ kết quả khi đó sẽ nhiều hơn 10%.
Một số cách dùng phổ biến của mệnh đề TOP SQL Server
Nguồn tin: Quantrimang.com:
Ý kiến bạn đọc
Những tin mới hơn
Những tin cũ hơn
TOP công cụ AI tạo bài hát tốt nhất để sáng tác những bản nhạc ấn tượng
Chuyển đổi danh sách sản phẩm thành dashboard hàng tồn kho trực tuyến bằng Google Sheets Canvas
Tinh chỉnh bằng các prompt bổ sung trong Google Sheets Canvas
Cách xuất phản hồi AI Mode sang Docs trên Google Search
So sánh các gói Higgsfield - Nên lựa chọn gói nào để tạo video AI
Chia sẻ an toàn: Quyền hạn, quyền riêng tư và những gì được giữ riêng tư trong Google Sheets Canvas
Gemini vs Claude: Đâu là trợ lý AI tốt hơn?
ChatGPT Work là gì? Sử dụng ChatGPT Work như thế nào?
Lựa chọn ứng dụng doanh nghiệp đầu tiên để thực hiện bằng Google Sheets Canvas
Cách chuyển phản hồi Google AI Mode thành email
Claude vs Perplexity: Đâu là công cụ AI tốt hơn?
4 phần mềm mã Morse miễn phí để gửi tin nhắn được mã hóa
Tự xây dựng ứng dụng doanh nghiệp của riêng bạn bằng Google Sheets Canvas
Cách đổi kích thước ảnh trên ChatGPT không cần prompt
Cách sử dụng Claude Projects: Hướng dẫn thực tế
Cách đánh dấu vùng cần sửa ảnh trên ChatGPT
Sự khác biệt giữa Hub và Switch
Top 6 nền tảng AI hội thoại đáng dùng năm 2026
Những lời chúc đầu tuần hay cho cả 7 ngày may mắn
Cách dùng Claude tự động quản lý Gmail: lên lịch, soạn nháp và gửi thư có kiểm soát
Cách lập trình chuyên nghiệp hơn, dễ dàng hơn với tính năng Tệp trên Grok
Hướng dẫn cài đặt và sử dụng n8n trên Windows 11
Công thức tính diện tích hình Elip
Hướng dẫn ngắt kết nối ứng dụng trên ChatGPT
Hướng dẫn tạo đoạn hội thoại cho topic trên Twee
8 ứng dụng Microsoft Store miễn phí giúp Windows tốt hơ
Bức tranh tổng quan về hỗ trợ khách hàng tích hợp AI
Đừng chia sẻ ảnh cho đến khi bạn chạy kiểm tra siêu dữ liệu này!
6 cách mở Computer/System Properties trong Windows 10
Cách sửa lỗi There Are Currently No Power Options Available Windows