我正在尝试在单个查询中更新多个表,但我使用的内容似乎没有进行任何更新。
UPDATE table1,table2 SET table1.name='John Doe',table2.name='John Doe'
WHERE table1.id=1 and table2.id = 1;
问题是,两个表中可能不存在具有相同id的行。如何在这种情况下进行更新?
在这种情况下,{1}存在于table1中,但不存在于table2中。
修改 这个想法是两个表中的更新数据,即使table1或table2中不存在id
示例:
id 1
答案 0 :(得分:1)
试试这个,
UPDATE table1
LEFT JOIN table2
ON table1.id = table2.id
SET table1.name = 'John Doe',
table2.name = 'John Doe'
WHERE table1.id = 1