我只想将不匹配的值从表2(tpl2)复制到tpl1。正确的语法是什么?我使用“update inner join”,但从tpl1中删除值。我应该改用insert select吗?见下文:

tpl1       tpl2             tpl1
------    -------          -------
col_1      col_1           col_1
1           1       --->     1
2           2                2
3           3                3
4           4                4
            5                5
            6                6
            7                7

最佳答案

您可以使用INSERT IGNORE。

INSERT IGNORE INTO tpl1 SELECT * FROM tpl2;

这意味着,当插入尝试将给定行从TPL2复制到TPL1时,并且行已经存在(即,新行将与现有的主密钥或唯一密钥值冲突),那么它就跳过该行。

关于mysql - 用另一个更新mysql表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22390069/

10-10 03:21