SUM( ) OVER ( )
- 누계 계산
- 문법
SUM ( 합계 대상 컬럼 ) OVER ( [PARTITION BY 컬럼 ] ORDER BY 컬럼 )
- PARTITION BY의 사용으로 세부적 grouping 가능
- 예제 1. 1000번 대리점의 판매 내역을 제품 코드별로 분류한 후 판매일자, 제품코드, 판매량, 판매금액, 누적판매금액을 출력하시오.
SELECT P_DATE, P_CODE, P_QTY, P_TOTAL,
SUM ( P_TOTAL ) OVER ( PARTITION BY P_CODE ORDER BY P_TOTAL ) "TOTAL"
FROM PNAMAE
WHERE P_CODE = '1000';
- 1000 번 P_CODE의 내역만 걸러 집계
- PARTITION BY 구문의 P_CODE로 누적판매금액 집계
PARTITION BY 컬럼
분류 기준에 따라 컬럼을 여러 개 지정할 수 있음
'DB > Oracle' 카테고리의 다른 글
[Oracle] LAG 함수 활용 - 차이 구하기 (0) | 2021.08.11 |
---|---|
[Oracle] RATIO_TO_REPORT( ) 함수 - 비율 구하기 (0) | 2021.08.11 |
[Oracle] 윈도우 함수/RANK( ) 함수 - 순위 출력 함수, DENSE_RANK( ) 순위 함수, ROW_NUMBER( ) 순위 함수 (0) | 2021.08.09 |
[Oracle] LAG( )함수 - 이전 행 값 가져오기, LEAD( )함수 - 이후 행 값 가져오기 (0) | 2021.08.09 |
[Oracle] 분석함수, 윈도함수 - GROUPING SETS ( ), LISTAGG( ), PIVOT( ), UNPIVOT( ) 함수 (0) | 2021.08.03 |