반응형
[Oracle 11g Enterprise 기준]
테이블의 데이터를 다른 테이블로 그대로 옮겨야 할 때가 있다.
Excel Export / Inport를 통한 방법이나 기타 여러 방법들이 있긴 한데 아무래도 귀찮은 방법이기도 하고. 그래서 Select Insert Query를 주로 사용한다.
1 2 | INSERT INTO A_TABLE a SELECT * FROM B_TABLE b WHERE b.no = '1' | cs |
가장 기본적으로 위와 같은 구성으로 시작할 수 있다. A_TABLE에 B_TABLE의 데이터 중, no가 1인 항목만을 넣는 쿼리이다.
만약, 특정 컬럼에 대해서만 select insert를 한다면? 다음과 같다.
1 2 3 4 5 6 7 8 | INSERT INTO A_TABLE a ( no , title , content , insert_date , insert_user ) SELECT no , title , content , insert_date , insert_user FROM B_TABLE WHERE no = '1' | cs |
위와 별개로, 다른 user에 할당된 테이블에 넣기 위해서는?
회사에서는 하나의 DB에 user 단위로 운용/개발 DB가 분리되어있다. 당연하게도 dba 권한으로 아래의 쿼리를 이용해주면 된다.
1 2 3 4 5 6 7 8 | INSERT INTO user_1.A_TABLE a ( no , title , content , insert_date , insert_user ) SELECT no , title , content , insert_date , insert_user FROM user_2.B_TABLE WHERE no = '1' | cs |
user_1은 user_2에 접근할 수 없기에 dba 권한으로 둘 다 접속이 가능한 상태에서 select / insert를 수행해주면 된다.
반응형
'어장 Develop > 어장 DBMS' 카테고리의 다른 글
[Oracle 11g] CLOB 쿼리 SELECT 방법 (0) | 2018.06.07 |
---|---|
[Oracle 11g] 테이블 생성시간 확인 쿼리 (0) | 2018.05.30 |
[informix] max 함수 null 일때 치환 (3) | 2013.08.20 |
[Query] 대소문자 구분없이 like 쿼리 (0) | 2013.08.08 |
[DB Error] java.lang.OutOfMemoryError: Java heap space (2) | 2013.08.02 |