데이타를 A 테이블에서 B로 옮기려고 하는데요.. 0 1 945

by SQL초보 [PL/SQL] [2015.08.20 00:04:38]


데이타를 tableA 테이블에서 tableB로 옮기려고 하는데요..

tablaA 테이블의 칼럼 a, b, c 가 있고, tableB의 칼럼 s, t, u 가 있다고 하면요~

 

tablaA 테이블의 b칼럼은 tableB의 u칼럼으로 인서트

tablaA 테이블의 a칼럼의 값이 Y이면 tableB의 t칼럼에 '1' 로 인서트

tablaA 테이블의 a칼럼의 값이 N이면 tableB의 t칼럼에 '0' 로 인서트

이렇게 하려고 합니다~!!

 

근데요 문제는..;ㅜ tableB의 칼럼s 는 seq값인데요~! 1, 2, 3, 4... 이렇게 들어가있고

select max(s) from tableB 를 조회해서 +1하여 인서트하면서 사용중이었거든요;;

 

이 부분도 해결하면서 tableA 테이블의 데이타를 tableB로 SQL로 잘 옮길 수 있을까요?

조언부탁드립니다~!!

by 마농 [2015.08.20 02:15:55]
INSERT INTO tableB(s, t, u)
SELECT b.s + ROWNUM           s
     , DECODE(a.a, 'Y', 1, 0) t
     , a.b                    u
  FROM tableA a
     , (SELECT NVL(MAX(s), 0) + 1 s FROM tableB) b
;

 

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