MySQL中执行sql语句错误 Error Code: 1093. You can't specify target table 'car' for update in FROM clause

来源:互联网 发布:淘宝模板代码怎么关闭 编辑:程序博客网 时间:2024/06/07 13:39

当执行以下sql语句时会出现 Error Code:1093 错误:

update car set tag = 1 where id in (select id from car where brand_id=182 and tag=0);

出现错误的原因是因为修改的表和查询的表是同一个表,MySQL是不允许这样做的,我们可以通过中间再查询一次来解决:

update car set tag = 1 where id in (select id from (select id from car where brand_id=182 and tag=0) As temp);
1 0
原创粉丝点击