我正在尝试使用一个查询更新MySQL中的两个表,并且遇到了错误。我已经查看了类似的情况和解决方案,但似乎无法将它们转换为我的特定查询/情况,因为我继续得到相同的错误。我的目标似乎是我缺少一个明显的解决方案。我的查询如下:
UPDATE table_pr, table_pu
INNER JOIN table_pu ON table_pr.id = table_pu.pr_id
SET table_pr.cpr2 = table_pu.cpr2_id, table_pu.cpr_updated = '1'
WHERE table_pu.cpr2_date < CURRENT_DATE()
当我运行Update时,我得到 Not unique table / alias:'table_pu'返回。我更喜欢不使用别名,但我也试图为表设置唯一的别名,结果相同。如果我的方法应该被修改,我的最终目标是根据table_pr.cpr2
将table_pu.cpr2_id
设置为WHERE table_pu.cpr2_date < CURRENT_DATE()
,如果运行更新,还要设置table_pu.cpr_updated = '1'
非常感谢任何帮助或指导。
答案 0 :(得分:0)
删除UPDATE语句中的第二个表引用解决了该问题。