思路1:
创建实例p1/p2,比较两者中的Email值。
代码1:
delete p1
from Person p1,Person p2
where p1.Email=p2.Email and p1.Id>p2.Id;
思路2:
多重选择,需要注意每次选择必有别名。
delete from Person
where Id not in (select Id
from (select min(Id) as Id
from Person
group by Email) as p)
)
分析:
第二种为最优解。看来还是在同一个表中操作比较快,如果创建两个实例,则会耗费时间与空间资源。