10. SELECT TOP
1. SELECT TOP
Clause
SELECT TOP
절은 반환할 레코드 수를 지정하는 데 사용된다.- 이
SELECT TOP
절은 수천 개의 레코드가 있는 큰 테이블에 유용하다. - 참고로 MySQL은
LIMIT
절을 지원하는 반면 Oracle은FETCH FIRST n ROWS ONLY
및ROWNUM
을 지원한다.
2. Syntax
1) SQL Server / MS Access
2) MySQL
3) Oracle 12
4) Older Oracle
5) Older Oracle (with ORDER BY)
SELECT *
FROM (SELECT column_name(s) FROM table_name ORDER BY column_name(s))
WHERE ROWNUM <= number;
Demo Database
- 다음은 Northwind 샘플 데이터베이스의
Customers
테이블이다.
3. TOP
, LIMIT
and FETCH FIRST
Examples
- 다음은
Customers
테이블에서 처음 세 개의 레코드를 선택한다. (SQL Server/MS Access)
- 다음은 MySQL에 해당하는 예를 보여준다.
- 다음은 Oracle에 해당하는 예를 보여준다.
4. TOP PERCENT
Example
- 다음은
Customers
테이블에서 레코드의 처음 50%를 선택한다. (SQL Server/MS Access)
- 다음은 Oracle에 해당하는 예를 보여준다.
5. ADD a WHERE
CLAUSE
- 다음은
Customers
테이블에서 국가가"Germany"
인 처음 세 개의 레코드를 선택한다. (SQL Server/MS Access)
- 다음은 MySQL에 해당하는 예를 보여준다.
- 다음은 Oracle에 해당하는 예를 보여준다.