DELETE from li_make_code where user_id in
(
select user_id from li_make_code a
where
not exists (select 1 from li_user b where b.id=a.user_id)
) ;
[Err] 1093 - You can't specify target table 'li_make_code' for update in FROM clause
这个语句应该怎么改合适
mysql中FROM子句中无法指定更新目标表错误
你是想把
user_id
在li_user
表中找不到的给删了吧,为什么不直接用:你子查询和删除操作的是同一个表,不能同时查询和更新同一个表。
更改为join方式即可。
从 li_make_code 中删除 user_id in ( SELECT user_id from
(从 li_make_code a 中选择不存在的 user_id(从 li_user b 中选择 1 其中 b.id=a.user_id)) bb)