SQL 강좌 12.SQL SELECT TOP

The SQL SELECT TOP Clause

반환할 레코드의 숫자를 명시할 때 사용함
수천 개의 레코드가 있는 큰 테이블에 유용하다.

주의 : 모든 DB가 SELECT TOP절을 지원하는 것은 아니다. MySQL은 레코드의 숫자를 제한하기 위해서 LIMIT을 사용하고 Oracle은 ROWNUM을 사용함

SQL Server / MS Access Syntax:

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

MySQL Syntax:

SELECT column_name(s)
FROM table_name
WHERE condition
LIMIT number;

Oracle Syntax:

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

SQL TOP, LIMIT and ROWNUM Examples

처음 3개의 레코드를 가져오기

TOP:

SELECT TOP 3 * FROM Customers;

LIMIT:

SELECT * FROM Customers
LIMIT 3;

ROWNUM:

SELECT * FROM Customers
WHERE ROWNUM <= 3;

SQL TOP PERCENT Example

처음 50%의 레코드를 가져오기

TOP:

SELECT TOP 50 PERCENT * FROM Customers;

ADD a WHERE CLAUSE

국가가 독일인 레코드 중에 처음 3개 가져오기

TOP:

SELECT TOP 3 * FROM Customers
WHERE Country = 'Germany';

LIMIT:

SELECT * FROM Customers
WHERE Country='Germany'
LIMIT 3;

ROWNUM:

SELECT * FROM Customers
WHERE Country='Germany' AND ROWNUM <= 3;

Comments