삽질의 현장/- DataBase

[삽잡이::sql] 데이터를 다른 테이블에 INSERT하자! INSERT INTO SELECT

shovelman 2016. 6. 16. 22:55


INSERT INTO SELECT 구문은 

한 테이블로부터 데이터를 복사하여 

다른 테이블에 값을 Insert할 때 사용합니다.


단, 조건이 있지요.

복사를 하기 위해서는 두 테이블에 존재하는 컬럼들이 같아야합니다.




1
2
3
4
5
6
7
8
9
INSERT INTO 
            sap_db_A 
SELECT 
            * 
FROM 
            sap_db_B 
WHERE 
            name = "삽잡이" 
 
cs


이런식으로 

sap_db_A 라는 Table에 

sap_db_B Table에 있는 레코드들 중 

name이 삽잡이 레코드를 INSERT 할 수 있습니다.


물론, 모두 동일하지 않더라고 

INSERT INTO SELECT 구문 사용이 가능합니다.



1
2
3
4
5
6
7
8
9
INSERT INTO 
            sap_db_A (idx, name, age, sex) 
SELECT 
            idx, name, age, sex 
FROM 
            sap_db_B 
WHERE 
            name = "삽잡이" 
 
cs



이렇게 컬럼명을 지정해줌으로써 

부분적으로도 INSERT할 수 있습니다.


굳~