Bỏ qua đến nội dung
Bỏ qua điều hướng
MT MT.Net.VNDigital Platform
Đăng nhập
MT.NET.VN

MT.Net.VN

Tìm kiếm
MT LEARNING · LESSON

Mệnh đề TOP trong SQL

Mệnh đề TOP trong SQL

Mệnh đề TOP trong SQL

Mệnh đề TOP trong SQL



Mệnh đề TOP trong SQL được sử dụng để lấy ra N bản ghi hoặc X phần trăm bản ghi từ một bảng.

Lưu ý - Tất cả các cơ sở dữ liệu không hỗ trợ mệnh đề TOP. Ví dụ như MySQL hỗ trợ mệnh đề LIMIT để lấy ra số lượng hạn chế các bản ghi trong khi Oracle sử dụng lệnh ROWNUM để lấy ra một số lượng hạn chế các bản ghi.

Nội dung chính

Cú pháp

Cú pháp cơ bản của mệnh đề TOP với câu lệnh SELECT sẽ như sau.

 SELECT TOP number|percent column_name(s) FROM table_name WHERE [condition] 


Ví dụ

Giả sử bảng CUSTOMERS có các bản ghi sau:

 +----+----------+-----+-----------+----------+ | ID | NAME     | AGE | ADDRESS   | SALARY   | +----+----------+-----+-----------+----------+ |  1 | Ha Anh   |  32 | Da Nang   |  2000.00 | |  2 | Van Ha   |  25 | Ha Noi    |  1500.00 | |  3 | Vu Bang  |  23 | Vinh      |  2000.00 | |  4 | Thu Minh |  25 | Ha Noi    |  6500.00 | |  5 | Hai An   |  27 | Ha Noi    |  8500.00 | |  6 | Hoang    |  22 | Ha Noi    |  4500.00 | |  7 | Binh     |  24 | Ha Noi    | 10000.00 | +----+----------+-----+-----------+----------+ 

Truy vấn sau đây là một ví dụ trên máy chủ SQL, nó sẽ lấy ra 3 bản ghi hàng đầu từ bảng CUSTOMERS.

 SELECT TOP 3 * FROM CUSTOMERS; 

Điều này sẽ tạo ra kết quả sau:

 +----+----------+-----+-----------+----------+ | ID | NAME     | AGE | ADDRESS   | SALARY   | +----+----------+-----+-----------+----------+ |  1 | Ha Anh   |  32 | Da Nang   |  2000.00 | |  2 | Van Ha   |  25 | Ha Noi    |  1500.00 | |  3 | Vu Bang  |  23 | Vinh      |  2000.00 | +----+----------+-----+-----------+----------+ 

Đối với máy chủ MySQL, dưới đây là một ví dụ tương đương:

 SELECT * FROM CUSTOMERS LIMIT 3; 

Điều này sẽ tạo ra kết quả sau:

 +----+----------+-----+-----------+----------+ | ID | NAME     | AGE | ADDRESS   | SALARY   | +----+----------+-----+-----------+----------+ |  1 | Ha Anh   |  32 | Da Nang   |  2000.00 | |  2 | Van Ha   |  25 | Ha Noi    |  1500.00 | |  3 | Vu Bang  |  23 | Vinh      |  2000.00 | +----+----------+-----+-----------+----------+ 

Đối với máy chủ Oracle, thì khối lệnh sau đây là một ví dụ tương đương.

 SELECT * FROM CUSTOMERS WHERE ROWNUM <= 3; 

Điều này sẽ tạo ra kết quả sau:

 +----+----------+-----+-----------+----------+ | ID | NAME     | AGE | ADDRESS   | SALARY   | +----+----------+-----+-----------+----------+ |  1 | Ha Anh   |  32 | Da Nang   |  2000.00 | |  2 | Van Ha   |  25 | Ha Noi    |  1500.00 | |  3 | Vu Bang  |  23 | Vinh      |  2000.00 | +----+----------+-----+-----------+----------+ 


Zalo Messenger Gọi điện Hỗ trợ0
Home Dịch vụ Khóa học CPanel