Mysql--删除数据库中除了id不一样,其他一样的重复数据

案列:数据库中有多条重复的数据需要清洗一下,这些数据除了id(主键)不一样,其他的都一样。

一、首先看一下这些冗余的数据:

SELECT min(id) bid ,GROUP_CONCAT(id)FROM operation_title_copy_copy where descript != '' group BY descript,ACTION

结果:

Mysql--删除数据库中除了id不一样,其他一样的重复数据 

二、以这个id为例:36,57,72,74,130,171,305,361,376

Mysql--删除数据库中除了id不一样,其他一样的重复数据

三、删除这些重复的数据:sql语句如下:

DELETE FROM operation_title_copy_copy WHERE descript != '' AND id NOT IN (
SELECT b.bid FROM (
SELECT min(id) bid FROM operation_title_copy_copy where descript != '' group BY descript,ACTION) b

必须得让要先删除的id 的结果作为临时表,这样才可以删除,否则是不行 的会报错:

如下:

Mysql--删除数据库中除了id不一样,其他一样的重复数据 

总结:就这样去重了表中重复数据。。