查出谁在重复

想知道表里哪些记录重复了、各重复了几条,用 GROUP BY 把相同行归组,再靠 HAVING 筛出出现次数大于 1 的组。这是查重的标准套路。

查出谁在重复要点

查出谁在重复示例

						-- 找出重复的用户名及其出现次数
						SELECT username, COUNT(*) AS cnt
						FROM member
						GROUP BY username
						HAVING cnt != 1;

						-- 按"邮箱加手机"组合判定重复
						SELECT email, phone, COUNT(*) AS cnt
						FROM member
						GROUP BY email, phone
						HAVING cnt != 1;
避坑提醒:HAVING 与 WHERE 不同——WHERE 在分组前过滤行,HAVING 在分组后过滤组;对聚合结果筛选必须放 HAVING。
查出谁在重复 · 重复数据处理 知识卡片
卡片 03 / 06 · 重复数据处理(1080×1440 速查卡片)

重复数据处理知识点