Oracle/SQL
SQL 데이터 분석함수 - 상위비율구하기 Cume_dist () over ( partition by ~ order by ~ desc/asc)
NO:LOO
2021. 11. 19. 17:58
CUME_DIST(순위의 비율 출력하기)
→ 상위 몇 % ?
예제 : 이름, 월급, 월급순위, 월급순위의비율을 출력
select ename, sal, dense_rank() over (order by sal desc)as 순위 ,
cume_dist () over (order by sal desc)as 순위비율
from emp;
→ emp table 기준으로 1등은 1/14 로 계산된 비율
2등은 3/14 로 계산된비율(2등이 2명이기 때문에 )입니다.
문제 179 : 클래스타입,이름, 나이, 그옆에 클래스 타입별로 각각 나이가 높은 순서대로 자기의 나이에 대한 순위의 비율이 출력
select class_type, ename, age, address,
cume_dist() over ( partition by class_type
order by age desc) as 순위비율
from emp14
where ename = '이름';