当前位置:操作系统 > Unix/Linux >>

Error Code: 1093. You can't specify target table 'recharge_log' for update in FROM clause解决

Error Code: 1093. You can't specify target table 'recharge_log' for update in FROM clause解决
 
You can't specify target table 'recharge_log' for update in FROM clause
 
这个问题出现的情况是:
 
更新一个表的数据时,where条件中包含被表新表的子查询:
delete from r_log where ope = "111" and site in (select distinct(site) from r_log where operators = "1111uu");

 

 
我的解决办法是把子查询的结果放到一个临时表,然后再进行删除或更新操作,问题完美解决。
 
drop table dist_site;create TEMPORARY table dist_site select distinct(site) from r_log where operators = "1111uu";select * from r_log where operators = "111"
 and site in (select * from dist_site);

 


CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,