Home  >  Article  >  Database  >  mysql update in 报错解决

mysql update in 报错解决

WBOY
WBOYOriginal
2016-06-07 15:52:332582browse

在用到mysql update in的时候报错 update area set status='ON' where id in(select id from area where status='ON' and name like '%市辖%') [SQL]update area set status='ON' where id in(select id from area where status='ON' and name like '%市辖%'

在用到mysql  update in的时候报错

update area set status='ON' where id in(select id from area where status='ON' and name like '%市辖%')


[SQL]update area set status='ON' where id in(select id from area where status='ON' and name like '%市辖%')


[Err] 1093 - You can't specify target table 'area' for update in FROM clause



下面语句可以通过

update area a  inner join(select id from area where id in(select id from area where status='ON' and name like '%市辖%')) b on  a.id=b.id set a.status='OFF'

select * from area a inner join(select id from area where id in(select id from area where status='ON' and name like '%市辖%')) b on  a.id=b.id


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn