【发布时间】:2017-08-28 23:37:57
【问题描述】:
是否可以使用来自同一个表的子查询进行更新?
我收到此错误:
1093 - 您不能在 FROM 子句中指定目标表 'tasks' 进行更新
update tasks SET completed_form = 'y' AND all_forms_in = 'y' where EID in (select EID from tasks WHERE completed_form = 'y' AND all_forms_in = 'n' group by EID having count(*) > 1);
更新
我发现如果我将查询包装在另一个选择中,它会起作用。此处引用:MySQL Error 1093 - Can't specify target table for update in FROM clause
update tasks SET all_forms_in = 'y' where EID in (SELECT * FROM (select EID from tasks WHERE completed_form = 'y' AND all_forms_in = 'n' group by EID having count(*) > 1)AS b);
【问题讨论】:
标签: mysql sql-update subquery