Mysql 删除重复数据且保留一条原有数据

it2024-11-21  15

原文链接:https://blog.csdn.net/n950814abc/article/details/82284838

 

开干:

根据重复数据部分【index_id】分组,查找出唯一标识【id】时间最新的。

删除不是该唯一标识【id】的数据,即 旧的重复数据

delete from 【tablename】 where 【id】 not in(

  select 【bm.id】 from

    (select  【id】  from 【tablename】 group by 【index_id】order by 【time】desc )  【bm】

  );

范例:

delete from dgdb_items where id not in(   select bm.id from     (select  id  from dgdb_items group by index_id order by collect_date desc ) bm );

友情建议:数据库记得备份

能一目了然的就明了的我就看这个了,效率问题自己慢慢摸索

最新回复(0)