在MySQL中查找重复记录

在MySQL中查找重复记录

我想在MySQL数据库中提取重复的记录。这可以通过以下方式来完成:

SELECT address, count(id) as cnt FROM listGROUP BY address HAVING cnt > 1

其结果是:

100 MAIN ST    2

我想把它拉出来,这样它就能显示每一行都是重复的。类似于:

JIM    JONES    100 MAIN ST
JOHN   SMITH    100 MAIN ST

对如何做到这一点有什么想法吗?我试图避免执行第一个查询,然后使用代码中的第二个查询查找副本。


森栏
浏览 499回答 3
3回答

慕的地8271018

关键是重写此查询,以便将其用作子查询。SELECT firstname,     lastname,     list.address  FROM list   INNER JOIN (SELECT address               FROM   list               GROUP  BY address                HAVING COUNT(id) > 1) dup           ON list.address = dup.address;

手掌心

SELECT date FROM logs group by date having count(*) >= 2
打开App,查看更多内容
随时随地看视频慕课网APP