[SQL] limit와 offset 조합

Gi Woon Lee·2024년 9월 9일
0

TIL

목록 보기
61/78

LIMITOFFSET는 SQL에서 쿼리 결과를 제어할 때 자주 사용되는 키워드다. 이 두 키워드를 사용하여 데이터베이스 쿼리에서 반환되는 행의 수를 제한하고, 특정 위치부터 데이터를 가져올 수 있다.

TIL: SQL에서 LIMITOFFSET 사용법

1. LIMIT 사용법

  • 목적: 쿼리 결과에서 가져올 최대 행 수를 지정
  • 형식: LIMIT n은 쿼리 결과에서 상위 n개의 행만 반환
  • 예시:
    SELECT * 
    FROM table_name 
    ORDER BY column_name 
    LIMIT 5;
    위 쿼리는 table_name의 상위 5개의 행만 반환한다.

2. OFFSET 사용법

  • 목적: 결과에서 특정 위치의 행들을 건너뛰고 데이터를 가져온다.
  • 형식: OFFSET m은 쿼리 결과의 처음 m개의 행을 건너뛴다.
  • 예시:
    SELECT * 
    FROM table_name 
    ORDER BY column_name 
    OFFSET 3;
    이 쿼리는 첫 3개의 행을 건너뛰고 나머지 행을 반환한다.

3. LIMITOFFSET 함께 사용하기

  • 목적: 특정 위치부터 특정 개수의 행을 선택할 때 사용
  • 형식: LIMIT n OFFSET mm개의 행을 건너뛰고, 그 다음 n개의 행을 반환
  • 예시:
    SELECT * 
    FROM table_name 
    ORDER BY column_name 
    LIMIT 5 OFFSET 3;
    이 쿼리는 첫 3개의 행을 건너뛰고, 그 다음 5개의 행을 반환.

4. 실제 사용 예시

  • 상황: 직원 테이블에서 2번째 높은 급여를 받는 직원의 정보를 가져오고자 할 때.
  • 쿼리:
    SELECT salary 
    FROM Employee 
    ORDER BY salary DESC 
    LIMIT 1 OFFSET 1;
    이 쿼리는 급여를 내림차순으로 정렬한 후 첫 번째(가장 높은) 행을 건너뛰고, 두 번째 높은 급여를 가져온다.

핵심 포인트:

  • LIMIT: 결과 행의 수를 제한
  • OFFSET: 특정 위치의 행을 건너뛰고 데이터를 선택
  • 두 키워드를 함께 사용하여 페이징이나 특정 위치의 데이터 추출이 가능하다.

0개의 댓글