列出重复记录的所有实例的 MySQL 查询

标签 mysql

我有一张人员表,其中有很多重复记录(名字和姓氏相同)。我正在尝试编写一个查询来列出这些记录的所有实例。我不想将它们分组,因为我需要查看带有成员(member) ID 号的重复记录。例如,如果表中有 3 个 Joe Smiths,我希望在运行查询后看到此列表:

MemberID   FirstName    LastName
8746       Joe          Smith
8944       Joe          Smith
9774       Joe          Smith

我尝试编写一个查询,但它只列出了表中的所有记录。这是我尝试过但没有做我想做的事情:

 SELECT membership.Member_ID,membership.FirstName,membership.LastName    
 FROM membership WHERE membership.FirstName = membership.FirstName AND
 membership.LastName = membership.LastName;

最佳答案

您可以通过以下方式自行加入:

SELECT distinct 
 m1.Member_ID,m1.FirstName,m1.LastName    
 FROM membership m1
 inner join membership m2
 on m1.memberid = m2.memberid
 where m1.FirstName = m2.FirstName 
 AND m1.LastName = m2.LastName
 and m1.id <> m2.id;

希望对您有所帮助!

关于列出重复记录的所有实例的 MySQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46867383/

相关文章:

MySQl 我需要使一列仅对于另一列的某些值唯一

php - 使用mysql数据库从图像中获取信息

c# - '/' 应用程序中的服务器错误。在 c#.net 中

mysql - 您如何对具有数学顺序的数字的字段进行排序

java - 在mysql中使用java创建表

php - MySQL:每个日期的组事件

mysql - Magento:数据库消耗多少RAM?

mysql - 对 4 个表和多个条件的巨大 SQL 查询

mysql - 优化基于分层数据的类别表

mysql - 带有 Node MySQL 的无服务器框架 : PROTOCOL_INCORRECT_PACKET_SEQUENCE error