DB/MySQL

[MySQL] SELECT 결과 INSERT 하기

야곰야곰+책벌레 2021. 9. 2. 08:56
728x90
반응형

TABLE 과 TABLE 사이에 레코드를 복사를 할 때 하나하나 SQL문을 작성하는 것은 비효율적이다. 이럴 경우 사용하는 것이 INSERT ... SELECT 다.

<모든 컬럼 복사>
INSERT INTO 대상테이블 SELECT * FROM 소스테이블
<특정 컬럼 복사>
INSERT INTO 대상테이블 (컬럼1, ....., 컬럼n) SELECT 컬럼1, ... , 컬럼n FROM 소스테이블

일반 예제

INSERT dropusertbl (userID, userName) SELECT userID, userName FROM usertbl
INSERT dropusertbl (userID, userName) SELECT userID, userName FROM usertbl ORDER BY userID

레코드 합성 예제

INSERT INTO dropusertbl SELECT CONCAT(userID, '[', userName, ']'), usderDate FROM usertbl;

 

728x90
반응형