- rank함수는 rank( ) over(order by 컬럼)의 형식으로 사용되는데, 컬럼 값의 순서대로 순위를 매겨주는 컬럼을 만든다.
- dense_rank함수는 공동 순위가 있을 경우 그 다음 순위를 건너뛰고 차례대로 순위를 매기는 rank함수와 달리 공동 순위 이후 그대로 순위를 산출한다.
- from (쿼리)는 쿼리를 하나의 테이블로 간주하고 컬럼을 뽑아낸다.
select b.직원이름 as 우수사원명, a.*
from employees a
left outer join (
select a.부서번호, a.직원이름, a.순위
from(
select last_name||' '||first_name as 직원이름
, salary 급여
, department_id as 부서번호
, dense_rank() over(partition by department_id order by salary desc) as 순위
from employees
) a
where a.순위 = 1
) b
on a.department_id = b.부서번호;
'공부 자료 > SQL' 카테고리의 다른 글
[29일차] Join 용어에는 어떤 것이 있을까? (1) | 2023.01.29 |
---|---|
[28일차] Where - 서브쿼리 : 원하는 데이터 추출하기 (0) | 2023.01.28 |
[26일차] 서브쿼리. 원하는 데이터 추출하기 (0) | 2023.01.26 |
[25일차] 실전 데이터 분석 : 우리집 주변은 안전할까?!-3 (0) | 2023.01.25 |
[24일차] Self-Join. 자기 자신을 연결하기 (0) | 2023.01.24 |