본문 바로가기
Database

[SQL] RANK, DENSE_RANK, ROW_NUMBER 순위함수

by hunbal 2023. 2. 12.
SMALL

1. RANK

RANK 함수는 중복 값들에 대해서 동일 순위로 표시하고, 중복 순위 다음 값에 대해서는 중복 개수만큼 떨어진 순위로 출력하도록 하는 함수 입니다.

 

SELECT empNo, empName, salary,

RANK() OVER (ORDER BY salary DESC) RANK등수

FROM employee;

 

 

 

2. DENSE_RANK

DENSE_RANK 함수는 중복 값들에 대해서 동일 순위로 표시하고, 중복 순위 다음 값에 대해서는 중복 값 개수와 상관없이 순차적인 순위 값을 출력하도록 하는 함수 입니다.

 

SELECT empNo, empName, salary,

DENSE_RANK() OVER (ORDER BY salary DESC) DENSE_RANK등수

FROM employee;

 

 

 

3. ROW_NUMBER

ROW_NUMBER 함수는 중복 값들에 대해서도 순차적인(고유한) 순위를 표시하도록 출력하는 함수 입니다.

 

SELECT empNo, empName, salary,

ROW_NUMBER() OVER (ORDER BY salary DESC) ROW_NUMBER등수

FROM employee;

 

 

 

 

'Database' 카테고리의 다른 글

[MySQL]DBeaver로 다른 테이블 데이터 가져오기  (0) 2023.09.15
[SQL] 프로시저와 트리거의 차이점  (0) 2023.02.12
[SQL] 서브쿼리  (0) 2023.02.12
[SQL] 인라인 뷰 (Inline View)  (0) 2023.02.12
[SQL] 뷰(VIEW)  (0) 2023.02.12

댓글