我们在两个不同的MySQL服务器上有两个表。我们有一个唯一的密钥,它是 invoice
和 date
.
我们需要获取某个时间段的所有记录并将它们放入另一个表中。需要注意的是,可能已经存在记录,因此我们希望从回填的记录中排除这些记录。
哪些查询、想法、脚本等对完成此操作最有帮助?
如果您将唯一标识记录(或字段组合)的字段放在唯一标识的字段上,则可以使用 INSERT IGNORE INTO 作为 MySQL 语句。这将插入记录,但如果出现键冲突(例如,当该记录已存在时),它将只继续下一个记录。
您也可以使用 REPLACE INTO 而不是 INSERT INTO,后者类似于 INSERT IGNORE INTO,但它不会继续下一条记录,而是会覆盖冲突的行。
查看合并语法
TSQLmerge