You can't specify target table 'Person' for update in FROM clause

问题原因

  待更新的目标表不能直接出现在from子句中;

 

错误写法

DELETE 
FROM
	Person 
WHERE
	id NOT IN ( SELECT min( id ) FROM person t1 GROUP BY email )
正确写法(多封装一层)

DELETE 
FROM
	Person 
WHERE
	id NOT IN ( SELECT * FROM ( SELECT min( id ) FROM person t1 GROUP BY email ) t1 )

 

参考文章

【1】https://www.cnblogs.com/huyoo/p/14682242.html 

posted @ 2023-10-26 10:01  先娶国王后取经  阅读(0)  评论(0编辑  收藏  举报