SQL 튜토리얼

SQL 홈 SQL 소개 SQL 구문 SQL 선택 SQL 선택 고유 SQL 어디에 SQL 및, 또는, 아님 SQL 순서 SQL 삽입 SQL Null 값 SQL 업데이트 SQL 삭제 SQL 상위 선택 SQL 최소 및 최대 SQL 개수, 평균, 합계 SQL 좋아요 SQL 와일드카드 SQL 입력 SQL 사이 SQL 별칭 SQL 조인 SQL 내부 조인 SQL 왼쪽 조인 SQL 권한 조인 SQL 전체 조인 SQL 자체 조인 SQL 유니온 SQL 그룹화 기준 SQL SQL 존재 모든 SQL SQL 선택 대상 선택에 SQL 삽입 SQL 케이스 SQL 널 함수 SQL 저장 프로시저 SQL 주석 SQL 연산자

SQL 데이터베이스

SQL DB 생성 SQL 삭제 DB SQL 백업 DB SQL 테이블 생성 SQL 삭제 테이블 SQL 변경 테이블 SQL 제약 조건 SQL이 널이 아님 SQL 고유 SQL 기본 키 SQL 외래 키 SQL 확인 SQL 기본값 SQL 인덱스 SQL 자동 증분 SQL 날짜 SQL 보기 SQL 주입 SQL 호스팅 SQL 데이터 유형

SQL 참조

SQL 키워드 MySQL 함수 SQL 서버 기능 MS 액세스 기능 SQL 빠른 참조

SQL 예제

SQL 예제 SQL 퀴즈 SQL 연습 SQL 인증서

SQL TOP, LIMIT, FETCH FIRST 또는 ROWNUM


SQL SELECT TOP 절

SELECT TOP절은 반환할 레코드 수를 지정하는 데 사용됩니다.

SELECT TOP절은 수천 개의 레코드가 있는 큰 테이블에 유용합니다. 많은 수의 레코드를 반환하면 성능에 영향을 줄 수 있습니다.

참고: 모든 데이터베이스 시스템이 이 SELECT TOP절을 지원하는 것은 아닙니다. MySQL은 LIMIT제한된 수의 레코드를 선택하는 절을 지원하는 반면 Oracle은 . FETCH FIRST n ROWS ONLYROWNUM

SQL 서버/MS 액세스 구문:

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

MySQL 구문:

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

오라클 12 구문:

SELECT column_name(s)
FROM table_name
ORDER BY column_name(s)
FETCH FIRST number ROWS ONLY;

이전 Oracle 구문:

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

이전 Oracle 구문(ORDER BY 포함):

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

데모 데이터베이스

다음은 Northwind 샘플 데이터베이스의 "Customers" 테이블에서 선택한 항목입니다.

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


SQL TOP, LIMIT 및 FETCH FIRST 예

다음 SQL 문은 "Customers" 테이블(SQL Server/MS Access용)에서 처음 세 개의 레코드를 선택합니다.

예시

SELECT TOP 3 * FROM Customers;

다음 SQL 문은 MySQL에 해당하는 예를 보여줍니다.

예시

SELECT * FROM Customers
LIMIT 3;

다음 SQL 문은 Oracle에 해당하는 예를 보여줍니다.

예시

SELECT * FROM Customers
FETCH FIRST 3 ROWS ONLY;

SQL TOP PERCENT 예

다음 SQL 문은 "Customers" 테이블(SQL Server/MS Access용)에서 레코드의 처음 50%를 선택합니다.

예시

SELECT TOP 50 PERCENT * FROM Customers;

다음 SQL 문은 Oracle에 해당하는 예를 보여줍니다.

예시

SELECT * FROM Customers
FETCH FIRST 50 PERCENT ROWS ONLY;

WHERE 절 추가

다음 SQL 문은 "Customers" 테이블에서 처음 세 개의 레코드를 선택합니다. 여기서 국가는 "Germany"(SQL Server/MS Access용)입니다.

예시

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

다음 SQL 문은 MySQL에 해당하는 예를 보여줍니다.

예시

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

다음 SQL 문은 Oracle에 해당하는 예를 보여줍니다.

예시

SELECT * FROM Customers
WHERE Country='Germany'
FETCH FIRST 3 ROWS ONLY;