[PLSQL] 로우단위의 누적합 구하기

ORACLE | 2009. 10. 24. 21:08
Posted by Haronoid
  • sum(대상열) over (partition by 그룹1, 그룹2 order by 누적순서)
    • "누적순서"의 순서로 "대상열"을 순차적으로 합한 값을 표현
    • partition by 를 넣는것으로 그룹단위의 누적합을 구할 수 있다..
예제 sql)
select CA1, CA2, sum(CLM1) over (partition by CA1, CA2 order by CLM2)
from (
select 1 CLM1, 1 CLM2, 'A' CA1, 'B' CA2 from dual;
union all
select 1 CLM1, 2 CLM2, 'A' CA1, 'B' CA2 from dual;
union all
select 1 CLM1, 3 CLM2, 'A' CA1, 'C' CA2 from dual;
union all
select 1 CLM1, 4 CLM2, 'A' CA1, 'C' CA2 from dual;
union all
select 1 CLM1, 5 CLM2, 'A' CA1, 'C' CA2 from dual;
)
->
1:  A B 1
2:  A B 2
3:  A C 1
4:  A C 2
5:  A C 3
 
블로그 이미지

Haronoid

기본적으로 프로그래밍 관련 메모를 중점으로 합니다. 자세한 설명이 결여되어 있을 가능성이 있습니다.

카테고리

분류 전체보기 (29)
프로그래밍 기본 (1)
VB&VBA (1)
JAVA (0)
ORACLE (10)
WidnowsCommandLine (2)
Excel (1)
Windows (1)
.NET (6)
MS SQL (6)