首页 > 技术文章 > MySQL中删除重复数据只保留一条

djq-jone 2019-04-20 18:25 原文

一.删除数据库中的重复数据, 只留一条

 1 -- 删除数据库中的重复数据只留一条
 2 DELETE 
 3 FROM
 4     crm_member 
 5 WHERE
 6     id IN (
 7     SELECT
 8         a.id 
 9     FROM
10         (
11         SELECT
12             id 
13         FROM
14             crm_member 
15         WHERE
16             phone IN ( SELECT phone FROM crm_member GROUP BY phone HAVING count( phone ) > 1 ) 
17             AND id NOT IN ( SELECT min( id ) FROM crm_member GROUP BY phone HAVING count( phone ) > 1 ) 
18         ) a 
19     )

 

推荐阅读