mysql 查找删除重复

20 03月
作者:PK|分类:工作

1、查找表中多余的重复记录,重复记录是根据单个字段(name)来判断

select * from student where name in (select name from student group by name having count(name)>1);

2、查找表中多余的重复记录,多个字段(name,ip)来判断

select * from student s where (s.name,s.ip) in (select name,ip from student group by name,ip having count(*) > 1);

删除重复记录 单个字段,保留主键最小的记录.

delete from student
where name in (select name from (select * from student group by name having count(name)> 1) stu)
and id not in (select * from (select min(id) from student group by name having count(name )>1) stu1);


浏览691 评论0
返回
目录
返回
首页
查看MySQL数据库大小 MySQL Migration Tool 运行环境