mysql - sql中产生重复数据

标签 mysql select merge duplicates generate

我需要从 mysql 数据库的一张表中生成重复数据。当我单击“生成”或“查找”按钮时,它将选择所有重复的数据。而且它也将基于相同的名字和生日。但有时我们与其他人同名,但生日不同。

例如: 示例数据库:

enter image description here

预期输出:

enter image description here

最佳答案

SELECT * FROM my_table t
WHERE 1 < (SELECT COUNT(*) FROM my_table
           WHERE Name = t.Name
             AND MiddleName = t.MiddleName
             AND LastName = t.LastName
             AND BirthData = t.BirthData)

内部查询返回 COUNT 条记录,这些记录与外部查询中的 Name、MiddleName、LastName、BirthData 相同,我们只需要这些记录的数量超过1 条记录。

关于mysql - sql中产生重复数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51628653/

相关文章:

php - 通过 PHP 从 MySQL 数据库中提取不同的单一值

php - Laravel 从 ManyToOne 关系错误 SQLSTATE [23000] 创建 Eloquent 实例

mysql - 在 mysql 选择查询中传递 perl 数组

R根据具有添加条件的特定列合并两个数据集

mysql - 合并相似的 SQL 行

r - 按连续索引合并 data.frame 行

php - 如何更新基本上具有年份的表列之一,我只需要增量更新

mysql - 结果中的动态列名称

具有重复子查询的 mySQL 选择联合查询运行缓慢

mysql - DISTINCT 导致全表扫描