Tin tức

Kiến thức SQL – Mệnh đề SELECT TOP

27/06/2013

Mệnh đề SELECT TOP được sử dụng để chỉ ra số bản ghi lấy về. Mệnh đề này rất hữu dụng với 1 bảng có số lượng lớn bản ghi vì nếu trả về lượng lớn bản ghi có thể làm cho hiệu suất hệ thống giảm.

Ứng dụng trong thiết kế web là lấy ra được danh sách 10 tin mới nhất, hoặc 10 tin hot nhất. Hoặc để lấy ra 1 lượng bản ghi nhất định trong phân trang.

Chú ý: Không phải tất cả các hệ thống CSDL đều hỗ trợ mệnh đề SELECT TOP hoặc mỗi loại hệ quản trị CSDL lại có 1 phiên bản hoặc cách thức khác nhau để SELECT TOP

Cú pháp SQL Server và Access

SELECT TOP number|percent column_name(s)
FROM table_name;

Cú pháp trong MySQL và Oracle:

Cú pháp MySQL

SELECT column_name(s)
FROM table_name
LIMIT number;

Ví dụ

SELECT *
FROM Persons
LIMIT 5;

Cú pháp Oracle

SELECT column_name(s)
FROM table_name
WHERE ROWNUM <= number;

Ví dụ

SELECT *
FROM Persons
WHERE ROWNUM <=5;

 

Demo:

Ta có bảng Customers sau đây:

CustomerID

CustomerName

ContactName

Address

City

PostalCode

Country

1

Alfreds Futterkiste

Maria Anders

Obere Str. 57

Berlin

12209

Germany

2

Ana Trujillo Emparedados y helados

Ana Trujillo

Avda. de la Constitución 2222

México D.F.

05021

Mexico

3

Antonio Moreno Taquería

Antonio Moreno

Mataderos 2312

México D.F.

05023

Mexico

4

Around the Horn

Thomas Hardy

120 Hanover Sq.

London

WA1 1DP

UK

5

Berglunds snabbköp

Christina Berglund

Berguvsvägen 8

Luleå

S-958 22

Sweden

 

Ví dụ câu lệnh SELECT TOP:

Lấy ra 2 bản ghi:

SELECT TOP 2 * FROM Customers;

Lấy ra theo số % bản ghi:

 Ví dụ lấy ra 50% số bản ghi trong bảng

SELECT TOP 50 PERCENT * FROM Customers;

Để tham dự các khóa học SQL Server của ESVN theo giáo trình chuẩn của Microsoft mời bạn click vào đây: Đào tạo SQL