running total 가능한가요? 0 2 2,744

by 해후 PLSQL [2012.04.20 15:25:50]


COLUMN1  COLUMN2
A 1
B 2
C 3
D 4
E 5

이렇게 데이터가 들어있는데

결과를   A   , 1  , 1
B  , 2  , 3
C  , 3  , 6
    D   , 4  , 10
    E   , 5  , 15
이런결과를 얻으려면 어떻게 해야 할까요? 

SELECT   COLUMN1 , COLUMN2 , 현재 ROW까지의 COLUMN2의 합   FROM TABLE

고수님들의 노하우를 좀 알려주세요.  감사합니다.
  

by 마농 [2012.04.20 15:56:36]
SELECT column1
     , column2
     , SUM(column2) OVER(ORDER BY column1) column3
  FROM table
;

by 김용한 [2012.04.20 15:56:37]
WITH T AS
(
SELECT 'A' col1, 1 col2 FROM DUAL UNION ALL
SELECT 'B' col1, 2 col2 FROM DUAL UNION ALL
SELECT 'C' col1, 3 col2 FROM DUAL UNION ALL
SELECT 'D' col1, 4 col2 FROM DUAL UNION ALL
SELECT 'E' col1, 5 col2 FROM DUAL
)
SELECT COL1
   , COL2
   , SUM(COL2) OVER ( ORDER BY COL2 ) COL3
  FROM  T
ORDER BY COL2
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입