Live2d Test Env

mysql本表自查自改(删)出现的问题

背景:

delete from A where id in (select id from A)

此背景会出现的问题:You can't specify target table 'A' for update in FROM clause

意思是MYSQL不允许在同一张表同时操作自查自改(删)

mysql与oracle不一样,oracle用以上操作完全么有问题

修改方案:

  可以把查询出来的结果当做一张临时表,绕过mysql的这个校验

delete
from A
where id in (select t.id from(select id from A) t)

 

posted @ 2022-08-29 10:39  红尘中人·杨哥  阅读(73)  评论(0编辑  收藏  举报