原始数据库 usename重复数据删除

mysql删除重复数据,并保留重复数据中最小id所在行的数据

第一步 找出username 字段有重复值 且count >1的username值

mysql删除重复数据,并保留重复数据中最小id所在行的数据

第二步 username字段有重复且count>1数据的最小id

mysql删除重复数据,并保留重复数据中最小id所在行的数据

显然就是以name为条件删除 id 不在第二步里面的所有数据 我们拼接sql语句

 

mysql删除重复数据,并保留重复数据中最小id所在行的数据

 

结果mysql删除重复数据,并保留重复数据中最小id所在行的数据

 

#第一步 找出username 字段有重复值 且count >1的username值
select username as dname from employee group by username having count(username) > 1

-- 第二步 cv 上面的 在重复数据中找出最小id的数据
select min(id) as mid from employee group by username having count(username) > 1;

-- 拼接sql语句 删除第一步 名字里面的所有数据 除了各自id最小的数据  实现删除 

sql语句 如下 

#第一步 找出username 字段有重复值 且count >1的username值
select username as dname from employee group by username having count(username) > 1

-- 第二步 cv 上面的 在重复数据中找出最小id的数据
select min(id) as mid from employee group by username having count(username) > 1;

-- 拼接sql语句 删除第一步 名字里面的所有数据 除了各自id最小的数据  实现删除 
delete from employee

where

username in (select pname from (select username as pname from employee group by username having count(username) > 1) a)

and

id not in (select pid from (select min(id) as pid from employee group by username having count(username) > 1 ) b)

-- 完事 设置表单username唯一 
alter table  employee add unique(username);

 

 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-10-25
  • 2021-06-11
  • 2021-12-15
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-09-09
  • 2022-02-24
  • 2022-12-23
  • 2022-12-23
  • 2021-06-09
  • 2022-02-05
相关资源
相似解决方案