Mysql删除重复数据解决方案
Mysql删除重复数据解决方案
问题描述
数据库中出现重复数据,需要定位到重复的数据,并删除重复数据。
例如 table _1
中出现了重复的 name
定位重复数据
SELECT name FROM table_1 GROUP BY mac HAVING count( name ) > 1;
删除重复数据
删除重复的后面插入的
DELETE
FROM
table_1
WHERE
name IN ( SELECT b.name from ( SELECT name FROM table_1 GROUP BY name HAVING count( name ) > 1 ) b)
AND id NOT IN (
SELECT a.id
FROM (
SELECT
min( id ) id
FROM
table_1
GROUP BY
name
HAVING
count( name )> 1) a);