728x90
오라클 값에 따른 순위 매기기 (RANK함수/ DENSE_RANK함수/ ROW_NUMBER함수 사용법, 비교)
값에 따라 순위를 매겨 뿌릴 때 쿼리에서 뽑아올 수 있는 함수가 있어서 소개한당 !
순위를 매기는 함수로는 RANK() , DENSE_RANK() , ROW_NUMBER() 이렇게 세 가지의 함수가 있는데,
각 함수마다 조금씩 특징이 다르다. 세가지 함수를 비교해보자 !
RANK() 함수
: 동일한 값에 대해 같은 순위를 부여하고 다음 순위는 누적 순위로 매긴다.
DENSE_RANK() 함수
: 동일한 값에 대해 같은 순위를 부여하고 다음 순위는 누적시키지 않고 다음 순차로 순위를 매긴다.
ROW_NUMBER() 함수
: 동일한 값에 대해 상관없이 순차적으로 순위를 부여한다.
RANK 함수 | DENSE_RANK 함수 | ROW_NUMBER 함수 | |
동일한 값 동일 순위 부여 |
O | O | X |
누적 순위 | O | X | X |
728x90
반응형
'DB > Oracle' 카테고리의 다른 글
[Oracle] PIVOT 함수 사용법 (행을 열로 변환) (0) | 2021.03.12 |
---|---|
[Oracle] CASE문 - CASE WHEN 표현식 사용법 (0) | 2021.02.19 |
[Oracle] WITH절 사용법 (0) | 2021.02.18 |
[Oracle] TO_CHAR 숫자 포맷(Format) 형식 _ FM표기법 (0) | 2021.02.16 |
[Oracle] TRIM, LTRIM, RTRIM 함수 사용방법 (0) | 2021.02.15 |
댓글