---------------------------------- 아 래 -------------------------------------------------
고객번호 |
판매일자 |
판매금액 |
100 |
20090701 |
1000 |
100 |
20090702 |
300 |
100 |
20090702 |
1000 |
200 |
20090701 |
2000 |
200 |
20090701 |
200 |
SELECT CUSTCODE 고객번호, SALEDATE 판매일자, SALE_AMT 판매금액,
SUM(SALE_AMT) OVER (PARTITION BY CUSTCODE ORDER BY SALEDATE
ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AMT1
FROM SAL_TBL
-------------------------------------------------------------------------------------------
①
고객번호 |
판매일자 |
판매금액 |
AMT1 |
100 |
20090701 |
300 |
2300 |
200 |
20090701 |
200 |
2200 |
②
고객번호 |
판매일자 |
판매금액 |
AMT1 |
100 |
20090702 |
1000 |
2300 |
200 |
20090701 |
2000 |
2200 |
③
고객번호 |
판매일자 |
판매금액 |
AMT1 |
100 |
20090701 |
1000 |
1000 |
100 |
20090702 |
300 |
1300 |
100 |
20090702 |
1000 |
2300 |
200 |
20090701 |
2000 |
2000 |
200 |
20090701 |
200 |
2200 |
④
고객번호 |
판매일자 |
판매금액 |
AMT1 |
100 |
20090701 |
1000 |
1000 |
100 |
20090702 |
300 |
2300 |
100 |
20090702 |
1000 |
2300 |
200 |
20090701 |
2000 |
2200 |
200 |
20090701 |
200 |
2200 |
SELECT CUSTCODE 고객번호, SALEDATE 판매일자, SALE_AMT 판매금액, SUM(SALE_AMT) OVER (PARTITION BY CUSTCODE ORDER BY SALEDATE
RANGE UNBOUNDED PRECEDING) AMT1
FROM SAL_TBL;
이렇게 하면 4번 선택지처럼 출력된다.
[출처] http://www.dbguide.net/da.db?cmd=snb13_view&boardGroupUid=6&boardConfigUid=81&boardUid=152219
* 정답 및 해설 *
정답 :③
윈도우 함수를 이용한 누적 합계(RUNNING SUMMARY)를 구하는 SQL이다.
[출처] http://www.dbguide.net/da.db?cmd=snb13_view&boardGroupUid=6&boardConfigUid=81&boardUid=152288