DB (데이터베이스)/Oracle (오라클)

[Oracle] oracle ROW_NUMBER 사용방법

뜽배 2024. 1. 29. 09:09
728x90
반응형

Oracle 분석함수에 ROW_NUMBER 사용방법에 대해서 알아보겠습니다

ROW_NUMBER는 정렬된 결과에 대해 순위를 부여하는 기능이다.

 

1. 예시쿼리

select 
	deptno,
	weigth,
	name,
	RANK() OVER (PARTITION BY deptno ORDER BY weigth) as weigth_rank
	DENSE_RANK() OVER (PARTITION BY deptno ORDER BY weigth) as weigth_dense,
	ROW_NUMBER() OVER (PARTITION BY deptno ORDER BY weigth) as weigth_row
from student
ORDER BY deptno, weigth, name;

 

 

위 결과와 같이 RANK()와 DENSE_RANK()의 경우에 동일한 값이 있다면 동일한 등급으로 부여합니다.
하지만 ROW_NUMBER()의 경우에 ORDER BY 된 우선순위에 따라 다르게 부여한다.

출처 : 오라클 중심의 SQL 배움터 (책)

728x90
반응형