mysql 去重返回记录的所有列值

mysql 去重返回记录的所有列值

工作中遇到需要将一张大表(数据大概在100万条数据的表),根据其中某个id去重,返回所有列数据,尝试了用很多种方式都很耗时,最后网上看到这篇文章

https://blog.csdn.net/guocuifang655/article/details/3993612

文章中提供了一总方案:

select *, count(distinct name) from table group by name

因为我需要把去重后数据放入一张新表,改造后变成:

INSERT INTO new_table SELECT *, COUNT(DISTINCT name) FROM table GROUP BY name

新表多建一列放 COUNT(DISTINCT name) 产生的值,然后删掉多余的列就行了

posted @ 2023-03-10 21:43  邵泽龙  阅读(173)  评论(0)    收藏  举报