Data Analysis/Database (SQL)

[SQL 활용] 12. 순위 계산

빠모스 2020. 5. 10. 00:13
반응형

순위 함수

salary가 500인 세 명이 모두 출력됨

rank() 는 5등이 여러명이면 여러명인만큼 등수가 사라짐

dense_rank()는 5등이 여러명, 그 후 6등

 

 

그룹 별 순위

부서 번호대로 랭크를 하는데 이 때 부서 번호대로 분류를 하고 그 분류된 각각의 소그룹에서 급여기준으로 내림차순으로 정렬해서 그 순위를 rank_dept 라는 속성값으로 출력하시오. 

from절에 subquery 형태로 인라인 뷰 사용. 

중복된 결과가 나오는데, 중복 허용하고싶지 않다면 select DISTINCT 붙여주면 됨.

부서별로 급여를 내림차순한 후, 가장 처음으로 나오는 값을 출력. 즉, 각 부서별 최고 급여액. (=MAX)

LAG(salary, 1) : salary를 기준으로 나보다 바로 앞 1명

LEAD(salary, 1) : salary를 기준으로 나보다 바로 뒤 1명

 

반응형