'테이블간 데이터 복사(구조가 다른 경우 포함)'에 해당되는 글 1건

728x90

테이블간 데이터 복사(구조가 다른 경우 포함)


테이블 구조가 다른 경우에도 테이블을 복사해야 하는 경우가 있다.

테이블을 설계하다보면 테이블 구조가 변경해야 하는 상황에서는 A 테이블과 B 테이블 구조가 약간 상이한 상황이 있다.


[니즈]

A_TABLE 테이블의 특정한 조건에 해당되는 데이터를

B_TABLE 테이블로 옮기고 싶다.


[방법]

INSERT INTO B_TABLE (필드1, 필드2, 필드3, 필드4)

(SELECT 필드1, 필드2, 필드3, 필드4 FROM A_TABLE WHERE 조건);


순서만 정확하게 맞추어주면 복사가 된다. 

INSERT INTO 테이블에 있는 필드수는 SELECT 문의 필드수와 동일해야 한다.

물론 INSERT INTO 테이블에 있는 필드 타입도 SELECT 문의 필드 타입과 동일해야 한다.

필수 필드가 있는 경우에는 반드시 포함해야 한다. 포함하지 않으면 에러가 발생한다.


작업은 EditPlus 같은 에디터를 이용하여 미리 만들어두고 나서

MySQL 접속을 하여 복사하여 붙여넣기를 하면 작업이 한방에 끝난다.


참고로 자동으로 증가되는 UID 번호는 필드에 포함시키지 않아도 된다. 굳이 포함시킨다면 증가되는 번호가 서로 다르게 증가될 수 있으므로 NULL 로 필드를 지정하면 된다. 'NULL' 이 절대 아니라는 점...


'SQL' 카테고리의 다른 글

MySQL 통계 Group by  (0) 2014.11.30
MySQL 인덱스  (0) 2014.11.25
[보안] MySQL의 root 패스워드 분실시 대처법  (0) 2014.11.09
[SQL] SELECT DISTINCT 구문  (0) 2014.08.30
MySQL 사용자 계정 패스워드 변경  (0) 2014.08.26
블로그 이미지

Link2Me

,