15.1.1 ROWNUM 문법
ORDER BY 절로 행을 정렬하고, 정렬된 행을 ROWNUM 슈도 칼럼으로 제한한다.
ROWNUM 슈도 칼럼은 행이 반환되는 순서대로 순번을 반환한다.
1부터 시작하고 행이 반환될 때마다 순번이 증가한다.
Top-N 쿼리는 시스템 성능에 미치는 영향이 크기 때문에 작성 표준을 신중하게 결정해야 한다. 현재까지는 ROWNUM 방식을 가장 많이 사용하고 있다.
SELECT empno, sal, ROWNUM AS rn WHERE ROWNUM = 2;
위의 쿼리는 결과가 반환되지 않는다. ROWNUM 슈도 칼럼은 1부터 시작하고 행이 반환될 때마다 순번이 증가하기 때문에 ROWNUM = 2 조건은 항상 FALSE 다.
sal을 오름차순으로 정렬하여 상위 5개의 행을 조회할 때,
15.1.2 분석 함수 방식
분석 함수 방식은 순위 분석 함수를 사용한다.
728x90
728x90
'Study > 불친절한 SQL 프로그래밍' 카테고리의 다른 글
[불친절한 SQL 프로그래밍] [16장] 계층 쿼리(2) (WITH, SEARCH, CYCLE) (0) | 2019.12.17 |
---|---|
[불친절한 SQL 프로그래밍] [16장] 계층 쿼리(1) (START WITH, CONNECT BY) (0) | 2019.12.12 |
[불친절한 SQL 프로그래밍] [14장] 분석 함수 - 14.2 분석 함수 (LAG, LEAD, LISTAGG 함수) (1) | 2019.12.06 |
[불친절한 SQL 프로그래밍] [12장] 서브 쿼리 - 12.5 WITH절 (0) | 2019.12.06 |
[불친절한 SQL 프로그래밍] [10장] GROUP BY절과 HAVING절 - 10.2 GROUP BY 절의 확장 기능(ROLL UP, CUBE, GROUPING SETS) (0) | 2019.12.03 |