Rumah  >  Artikel  >  pangkalan data  >  mysql update in 报错解决

mysql update in 报错解决

WBOY
WBOYasal
2016-06-07 15:52:332621semak imbas

在用到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


Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:高效的MySQL分页语句的效率Artikel seterusnya:MYSQL导入数据到TXT