Rumah >pembangunan bahagian belakang >tutorial php >mysql怎么删除重复记录

mysql怎么删除重复记录

WBOY
WBOYasal
2016-06-23 14:21:23903semak imbas

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

学习了


放飞心情 技术人生

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn