HiSEN

MySQL批量删除重复数据,保留id最小的一条

stu数据如下:

idname
1hisen
2hisen
3hisen
4hisenyuan
5hisenyuan

删除重复的name,保留id最小的。

思路就是先找出重复数据,然后再找出需要保留的数据(重复中id最小的)

然后删除id不在需要保留的id中的所有数据

1
2
3
4
delete
from stu
where id not in (select t.minId
from (select min(id) minId from stu group by name having count(name) > 1) t)