2010-08-03 3 views
17

동일한 서버에있는 2 개의 서로 다른 데이터베이스에 2 개의 동일한 테이블이 있습니다. 테이블에서 다른 테이블로 데이터를 복사하는 가장 좋은 방법은 무엇입니까?MySQL을 사용하여 여러 데이터베이스에서 선택 및 삽입

+0

을 왜 처음에 그런 중복 데이터를해야합니까? – NullUserException

+0

@ NullUserException 오래된 주석 이었지만 테스트/디버깅을 위해 별도의 데이터베이스로 데이터의 하위 집합을 추출하고자 할 때 유용합니다. –

답변

30

사용 :이 존재

INSERT INTO db1.table1 
SELECT * 
    FROM db2.table2 t2 
WHERE NOT EXISTS(SELECT NULL 
        FROM db1.table1 t1 
        WHERE t1.col = t2.col) 

은 간단하지만, 등/걱정하는 기본 키/AUTO_INCREMENT이 있다면 당신이 밖으로 남아 있습니다.

+1

db1과 db2가 다른 IP 주소에 있다면? –

3

그냥 당신과 같이, 어떤WHERE 절을 사용할 수 있습니다 OMG 조랑말 '대답에 약간 정교 :

INSERT INTO db1.tablename 
SELECT * 
FROM db2.tablename src 
WHERE src.lastlogin >= '2013-10-31 07:00:00'