mysql中"you can't specify target table"错误

来源:互联网 发布:nginx 端口转发 ssh 编辑:程序博客网 时间:2024/05/29 18:33

 

reference:  http://topic.csdn.net/u/20080521/15/542113f1-de7b-4ebf-9e90-3564fdbc25c0.html

 

 

update dhc_odds set cfirst_matchdatetime=(select cmatchdatetime from(select min(cmatchdatetime) from dhc_odds where cbatch_no='WED002') as b )where cbatch_no='WED002'

这句SQL在mysql中怎么改啊? 意识是说mysql中不允许对同一个表(有select语句的)进行update操作
但是可以转换谁帮忙转换一下啊 不要拆成两句 执行 

 

==>>

 

update dhc_odds A ,(select min(cmatchdatetime) AS MA from dhc_odds where cbatch_no='WED002') B
set A.cfirst_matchdatetime=B.MA
Where A.cbatch_no='WED002'

 

..................

 

 

Update qq set name=? where num in (select min(num) from qq where name IS NULL)

==>

 

Update qq,(select min(num) as num from qq where name IS NULL)b  set name=? where qq.num = b.num