Mysql——删除数据库中的重复记录

查找数据库中的重复记录(多个字段):
SELECT * FROM wcs_best_fitness_individual WHERE (spokeCounts,isSpokeClosure,deflectionAngleOne,deflectionAngleTwo) IN 
(SELECT spokeCounts,isSpokeClosure,deflectionAngleOne,deflectionAngleTwo FROM wcs_best_fitness_individual 
GROUP BY spokeCounts,isSpokeClosure,deflectionAngleOne,deflectionAngleTwo HAVING COUNT(*) >1);
查找数据库中多余的重复记录(多个字段,已保留一条数据):
SELECT * FROM wcs_best_fitness_individual WHERE (spokeCounts,isSpokeClosure,deflectionAngleOne,deflectionAngleTwo) IN 
(SELECT spokeCounts,isSpokeClosure,deflectionAngleOne,deflectionAngleTwo FROM wcs_best_fitness_individual 
GROUP BY spokeCounts,isSpokeClosure,deflectionAngleOne,deflectionAngleTwo HAVING COUNT(*) >1) AND
id NOT IN (SELECT id FROM wcs_best_fitness_individual GROUP BY 
spokeCounts,isSpokeClosure,deflectionAngleOne,deflectionAngleTwo HAVING COUNT(*)>1);

猜你喜欢

转载自blog.csdn.net/qingwuh/article/details/81350667