【发布时间】:2013-04-20 19:33:08
【问题描述】:
同一个数据库中有2个结构相同的表。我想使用 mySQL 将所有数据从一个表复制到另一个表。源表的行数可能与目标表相同、更少或更多。
我尝试搜索。我找到了两种方法:
方法#1
TRUNCATE destination;
INSERT INTO destination SELECT * FROM source
方法 #2
DROP TABLE destination;
CREATE TABLE destination SELECT * FROM source
难道没有其他涉及 UPDATE 的方法吗?
【问题讨论】:
-
更新是针对现有记录的更改。您不会更改现有记录,因此您的选择是 INSERT。
-
您是否要合并“目的地”中的记录?
-
@MichaelGardner 目标实际上是源的旧副本。
-
Mysql 有
REPLACE是SQLMERGE的简化版。
标签: mysql sql insert-update create-table insert-into