I have 2 identical tables in 2 different databases that reside on the same server. What would be the best way to copy data from table to another?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
Use:
INSERT INTO db1.table1
SELECT *
FROM db2.table2 t2
WHERE NOT EXISTS(SELECT NULL
FROM db1.table1 t1
WHERE t1.col = t2.col)
The exists is simplified, but you left out if there's a primary key/auto_increment to worry about/etc.
回答2:
Just to elaborate slightly on OMG Ponies' answer, you can use any WHERE
clause, like so:
INSERT INTO db1.tablename
SELECT *
FROM db2.tablename src
WHERE src.lastlogin >= '2013-10-31 07:00:00'