数据库练习——leetcode(196):删除重复的邮箱(delete not in)

删除重复的邮箱

一、题目

在这里插入图片描述

二、解析

可以先找到独特的ID,然后从原表中将不在独特ID中的数据删除

  • 注意要将独特的ID生成一个临时表,否则会报错
  • 因为对于SQL里删除这个操作而言 要求查询条件里不能有删除的那个表 就是删除Person表时person表不能出现在where条件里 防止出现递归删除或死循环 所以需要在外面套一层临时表t解决这个问题
delete from Person where Id not in 
(select Id from
(select min(Id) as Id from Person group by Email) as tmp)
发布了49 篇原创文章 · 获赞 2 · 访问量 1821

猜你喜欢

转载自blog.csdn.net/liuluTL/article/details/105114123