修改这个表的数据时不可以使用这个表
最近执行一个删除表记录的sql时,报了个错【You can't specify target table 't_assign' for update in FROM clause】,大概意思是说你在修改这个表的时候不可以使用这个表。
sql大概:delete from t_assign where id in(select a.id t_assign a where a.billId=?)
怎么解决
修改后:delete from t_assign where id in(select b.id from (select a.id t_assign a where a.billId=?) b)
嗯,就这样,再在外面包一层select查询