【发布时间】:2016-07-05 10:38:19
【问题描述】:
我从这个 INSERT INTO ON DUPLICATE KEY UPDATE MySQL 语句开始。
INSERT INTO Table1 ( field1, field2)
VALUES (1, 2)
ON DUPLICATE KEY UPDATE field1 = 1, field2 = 2
然后,我遇到了一个错误“外键约束失败”。
我意识到我需要添加另一个 WHERE 子句条件来满足具有内连接的外键约束。
我尝试过这样的事情;
INSERT INTO Table1 ( field1, field2)
Inner Join Table2
ON Table2.id = Table1.field_id
VALUES (1, 2)
ON DUPLICATE KEY UPDATE field1 = 1, field2 = 2
WHERE Table2.addr='123456'
我收到语法错误。编写此 MySQL 语句的正确方法是什么?
【问题讨论】: