首页  >  文章  >  后端开发  >  mysql怎么删除重复记录

mysql怎么删除重复记录

WBOY
WBOY原创
2016-06-23 14:21:23885浏览

mysql

表名是tongxunlu 字段是id sXingMing sXingBie dtShengRi
因为重复插入了,几份数据,想删除重复的

回复讨论(解决方案)

举例说明,怎么判断重复的。

手动删除。。

可以直接判断sXingMing sXingBie dtShengRi这几个字段值是否相同,然后再根据需要进行删除

删除重复记录

delete from tongxunlu a where  rowid not in(select max(rowid) from tongxunlu where id=a.id and sXingMing=a.sXingMing and  sXingBie=a. sXingBie and dtShengRi=a.dtShengRi); 

delete from tongxunlu  where  id not in(select max(id) from tongxunlu group by id sXingMing sXingBie dtShengRi;


以什么为判断重复的条件,则以什么分组。

先说多少条数据。
数据不多的话,把数据表备份出来,原来的表清空,foreach扫一遍备份数据表,把不重复的的插入到原来的表中。
这样就解决问题了,没必要搞那么高深。

才几份数据,用第三方工具直接删了。

delete from tb1 where id in(select id,count(id) as tt from tb.where having tt>1)
执行肯定是要花费一定的时间的,关键看数据量多少

delete from tb1 where id in(select id,count(id) as tt from tb.where having tt>1 group by $fn )
掉了group by

学习了


放飞心情 技术人生

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn