CUME_DIST
2024. 3. 8. 17:25ㆍDBMS/SQLQuery
반응형
SELECT ENAME, SAL,
COUNT(*) OVER (ORDER BY SAL) AS SALCOUNT ,--누적 순위
COUNT(*) OVER() AS TOTAL_COUNT, --전체 카운트
ROUND(COUNT(*) OVER(ORDER BY SAL) / COUNT(*) OVER(),2) AS "CNT/TOTALCNT"
FROM EMP;
SELECT ENAME, SAL,
COUNT(*) OVER (ORDER BY SAL) AS SALCOUNT ,--누적 순위
COUNT(*) OVER() AS TOTAL_COUNT, --전체 카운트
ROUND(COUNT(*) OVER(ORDER BY SAL) / COUNT(*) OVER(),2) AS "CNT/TOTALCNT",
ROUND(CUME_DIST() OVER(ORDER BY SAL),2) AS CUMEDIST
FROM EMP;
윈도우 내에서 현재 행의 값이 정렬된 컬럼 값들 중에서 어디에 위치하는지를 나타내는 누적 분포 값을 계산 할 수 있다. 이 값은 현재 행의 값보다 작거나 같은 값의 개수를 전체 값의 개수로 나눈 비율을 나타낸다.
현재 행이 정렬된 컬럼 값들 중에서 어느 위치에 있는지를 상대적인 비율로 표현하는 함수이고 데이터의 분포를 파악하거나, 각 값이 전체 분포에서 어떤 위치에 있는지를 확인하는 데 유용하게 사용할 수 있다.
-급여가 정렬된 컬럼 값들 중에서 어느 위치에 있는지를 알고 싶을 때 `CUME_DIST` 함수를 사용할 수 있다.
반응형
'DBMS > SQLQuery' 카테고리의 다른 글
sql 절 우선순위 (0) | 2024.04.13 |
---|---|
NTILE (1) | 2024.03.08 |
RATIO_TO_REPORT (0) | 2024.03.08 |
Window Function (0) | 2024.03.08 |
계층쿼리에서 행의 관계파악 (0) | 2024.03.07 |