조회갯수에 따른 row반복 0 1 651

by 최상일 [Oracle 기초] [2020.11.23 18:17:56]


조회갯수에 따른 row반복

 

A테이블의 조회갯수에 따라

B테이블 Row반복

A테이블데이터

연도 차수
2020 1
2020 2

B테이블자료

연도 차수 금액
2020 1 100
2020 1 200

 

박스는 잘못 그렸네요

 
     
결과    
연도 차수 구분 금액
2020 1 변경전 100
2020 1 변경후 200
2020 2 변경전 0
2020 2 변경후 0

 

by 마농 [2020.11.24 07:59:28]

B 테이블에 구분이 있어야 말이 되겠는데요? 구분이 없네요?

WITH t_a AS
(
SELECT '2020' yyyy, 1 seq FROM dual
UNION ALL SELECT '2020', 2 FROM dual
)
, t_b AS
(
SELECT '2020' yyyy, 1 seq, '변경전' gb, 100 amt FROM dual
UNION ALL SELECT '2020', 1, '변경후', 200 FROM dual
)
SELECT a.yyyy
     , a.seq
     , b.gb
     , NVL(b.amt, 0) amt
  FROM t_a a
  LEFT OUTER JOIN t_b b
  PARTITION BY (b.gb)
    ON a.yyyy = b.yyyy
   AND a.seq  = b.seq
 ORDER BY yyyy, seq, gb
;

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입