계층구조 관련 0 1 1,222

by 최원준 [SQL Query] [2013.03.23 17:02:54]



안녕하세요..
다름 아니라 아래의 자료를 기준으로 하나의 Query로 하려다 보니 어려움이 있어 도움을 요청 하고자
문의를 드립니다.

< 추출대상 테이블 >
매출번호   금액 원매출번호 
------------- -----------   -----------------
A-1 1000
A-2  2000
A-3 3000
A-4 4000
A-5 - 900  A-1

A-5의 매출전표는 A-1 매출전표의 부분취소 금액입니다.
Query로 아래와 같이
A-1의 매출번호에서 A-5의 금액을 차감하여 아래와 같은 결과를 도출 하고져 합니다.

< 결과자료 >
매출번호    잔액
------------- -----------
A-1     10
A-2  2000
A-3 3000
A-4 4000
by 아린 [2013.03.23 20:19:33]
위 결과만 원하실때는 계층구조 까지는 필요 없을듯 하네요.

WITH t(num, amt, p_num) AS(
SELECT 'A-1', 1000, ''    FROM dual UNION ALL
SELECT 'A-2', 2000, ''    FROM dual UNION ALL
SELECT 'A-3', 3000, ''    FROM dual UNION ALL
SELECT 'A-4', 4000, ''    FROM dual UNION ALL
SELECT 'A-5', -900, 'A-1' FROM dual
)
SELECT NVL(p_num, num) num, SUM(amt) amt
  FROM t
 GROUP BY NVL(p_num, num) 
 ORDER BY num
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입