데이터 순위로 출력
2023. 12. 30. 03:59ㆍDBMS/SQLQuery
반응형
--RANK() 순위 출력 OVER(출력 데이터 정렬) 월급이 높은 순서로 순위출력 순위 누적 바로 2등 출력 DENSE_RANK
select ename, job,sal, rank() over (order by sal desc)순위
from emp
where job in('ANALYST','MANAGER');
select ename, sal, job , rank() over (partition by job order by sal desc) as 순위
from emp;
--직업별로 묶어서 월급 순위를 부여 order by 앞에 partition by job
--DENSE_RANK
select ename, job,sal, RANK() over (order by sal desc) as RANK,
DENSE_RANK() over (order by sal desc) as DENSE_RANK
from emp
where job in('ANALYST','MANAGER');
select ename, job,sal, DENSE_RANK() over (PARTITION BY job ORDER BY sal desc) as DENSE_RANK
from emp
where hiredate between to_date('1981/01/01','RRRR/MM/DD')
and to_date('1981/05/05','RRRR/MM/DD');
--월급이 2850인 사원이 사원 테이블에서 월급 순위가 어떻게 되는지 출력하는 쿼리
select DENSE_RANK(2850) within group (order by sal desc) as 순위
from emp;
--전체 사원중 몇번째로 입사를 한 것인지 순위를 보여줌
select DENSE_RANK('93/11/10') within group (order by hiredate ASC) 순위
from emp;
반응형
'DBMS > SQLQuery' 카테고리의 다른 글
집계 함수와 윈도우 함수 (0) | 2024.03.03 |
---|---|
NVL NVL2 (0) | 2024.02.24 |
행 제한절 FETCH FIRST OFFSET (0) | 2024.01.02 |
sql 몬테카를로 알고리즘 (0) | 2023.12.31 |
sql 피타고라스 정리 문제 (0) | 2023.12.30 |