1
2
3
4 |
이름 널 유형
-- -------- ------------
A NOT NULL VARCHAR2(10)
B NUMBER |
cs |
1 |
SELECT * FROM TEST01; |
cs |
다음과같은 원본데이터에 값의 누계를 구하고 싶다면 ?
1) 오라클 분석함수를 이용하여 구하기
1
2 |
SELECT A AS "코드", B AS "값" , SUM(B) OVER (ORDER BY B) AS "누계값"
FROM TEST01; |
cs |
2) 부등호 조인을 이용하여 구하기
1
2
3
4
5
6
7
8 |
SELECT
X.A
, X.B
, Y.B
FROM TEST01 X
, TEST01 Y
WHERE Y.A <=X.A
AND X.A <= '00012'; |
cs |
둘중하나를 다른 쪽보다 작거나 같다로 조건으로 조인을 걸어준결과 1건의 행에 대해 자신의 A컬럼 값보다 작거나 같은 행들의 수 만큼 행들이 연결된다.
GROUP BY 를 하고 B_1 값을 SUM해준다.
1
2
3
4
5
6
7
8
9
10 |
SELECT
X.A
, X.B
, SUM(Y.B) ACC
FROM TEST01 X
, TEST01 Y
WHERE Y.A <=X.A
AND X.A <= '00012'
GROUP BY X.A
, X.B ; |
cs |
출처 : 전문가로 가는 길 오라클 실습 (이채남님 저서)
'DataBase' 카테고리의 다른 글
소계와 합계 구하는 방법 (1) (0) | 2015.12.17 |
---|---|
프로시져란 (PROCEDURE) ? (0) | 2015.12.16 |
COPY_T 테이블이란? (0) | 2015.12.16 |
누계를 구하는 방법에 대하여 (2) (0) | 2015.12.14 |
SUBSTR 함수 (0) | 2015.12.09 |