Database/Oracle
[Oracle] 조회순서 매기는법 - ROWNUM
Youngs_
2022. 3. 4. 12:33
1. ROWNUM 키워드 이용하는 방법
- 조회된 순서되로 순번을 매긴다.
SELECT ROWNUM , a.*
FROM (조회할 테이블 or 쿼리) a
- ORDER BY 를 사용하면 순번이 뒤섞이므로 정렬된 서브쿼리 결과에 ROWNUM 을 매겨야 한다.
SELECT ROWNUM
, x.*
FROM ( SELECT a.*
FROM emp a
ORDER BY a.ename
) x
2. ROW_NUMBER() 함수를 사용하는 방법
- ORDER BY 된 결과에 순번을 매길때에는 ROWNUM 보다 ROW_NUMBER() 함수가 더 편하다.
SELECT ROW_NUMBER() OVER(ORDER BY a.job, a.ename) row_num
, a.*
FROM emp a
ORDER BY a.job, a.ename
- 그룹별(PARTITION)로 순번을 따로 부여할 수 있다.
SELECT ROW_NUMBER() OVER(PARTITION BY a.job ORDER BY a.job, a.ename) row_num
, a.*
FROM emp a
ORDER BY a.job, a.ename