最近项目中Mysql数据库中重复的记录条数非常多,数据量也非常大,用最简单的处理数据SQL进行处理,如果有较好的处理SQL,请留言,共同学习!
先附上代码:
<span style="white-space:pre"> </span>//查询有重复的记录
<span style="white-space:pre"> </span>SELECT * ,COUNT(*) AS nums FROM `data` GROUP BY id HAVING nums>1
<span style="white-space:pre"> </span>//新建一个tmp临时表存储去重数据
<span style="white-space:pre"> </span>CREATE TABLE tmp AS SELECT * FROM `data` GROUP BY id
<span style="white-space:pre"> </span>//删除之前的表
<span style="white-space:pre"> </span>DROP TABLE `data`
<span style="white-space:pre"> </span>//修改表明
<span style="white-space:pre"> </span>ALTER TABLE tmp RENAME `data`
此方法可以完成大量数据重复的筛选,不知道对于20w级的数据去重有什么好的方法。