DB (데이터베이스)/Oracle (오라클)
[Oracle] oracle 페이징 조회 top-n쿼리
뜽배
2024. 1. 29. 09:02
728x90
반응형
Oracle분석함수 TOP-N분석은 전체 컬뤔 값 중에서 큰 값이나 작은 값 순으로 상위 N개를 출력하는 기능이다.
TOP-N기능을 사용하기 위해서는 반드시 '서브쿼리', '인라인 뷰'를 반드시 이용해야한다.
그리고 서브쿼리나 인라인뷰의 결과에 대해 WHERE절에서 ROWNUM을 사용하여 출력하야 한다.
주의할 점은 ROWNUM과 상수 N의 비교 연산자는 반드시 '<' or '<=' 만 사용할 수 있다.
1. TOP-N쿼리 format
SELECT [column_list], ROWNUM
FROM ( SELECT [column_list]
FROM table
ORDER BY <TOP-N_column>)
WHERE ROWNUM <= N;
2. 예시 쿼리
select
studno,
name,
height,
rank_value
from (select
studno,
name,
heigth,
RANK() over (order by heigth DESC) as rank_value
from student)
where rank_value <= 3;
3. 결과
출처 : 오라클 중심의 SQL배움터 (책)
728x90
반응형