当前位置:Gxlcms > 数据库问题 > mysql删除重复数据,保留最新的那一条

mysql删除重复数据,保留最新的那一条

时间:2021-07-01 10:21:17 帮助过:15人阅读

select count(*) from department d 2 3 select count(*) from ( select distinct dept_code from department )

看以上查出来的数量是不是相同的,不同则就是dept_code有出现重复的

接下来删除重复值,并保留最新的记录

 1 delete from department where id in (
 2     select * from (
 3         select d.id 
 4         from department d
 5         inner join (
 6             select m.dept_code,max(m.sys_tm) max_tm FROM department m group by m.dept_code having count(1) > 1 
 7         ) a on a.dept_code = d.dept_code
 8         where d.sys_tm <> a.max_tm
 9     ) tmp
10 );

 

给该字段增加唯一索引

1 ALTER TABLE `department`
2     ADD UNIQUE INDEX `idex_dept_code` (`dept_code`);

 

mysql删除重复数据,保留最新的那一条

标签:删除重复数据   复数   art   唯一索引   alter   sel   let   编号   ide   

人气教程排行