2014-07-13 16:19:09
来 源
中存储网
MySQL
在mysql查询中使用以下语句: updatetable1 set '字段1' ='value1' where(select子句含table1字段)会报错: #1093 - You can't specify target table content foru

mysql查询中使用以下语句:

  update table1 set '字段1' = 'value1' where (select子句含table1字段)

会报错:

   #1093 - You can't specify target table content for update in FROM clause

原因是不能根据select一个表得到的条件,来同时update这个表。

解决方案:

create table tmp as (select子句)

update table1 set '字段1' = 'value1' where XXX in(select xxxfrom tmp);
drop table tmp;

声明: 此文观点不代表本站立场;转载须要保留原文链接;版权疑问请联系我们。