如何根据列查找所有重复的记录
How to find all records that have a duplicate based on a column
我正在尝试在 LINQ/Entity 框架中构建一个查询,该查询将 return 所有基于一列的重复行。但是,我不想对它们进行分组,我实际上想要获取所有具有重复项的行。
name age
---- ---
john 15
john 16
jack 20
jill 26
sam 10
sam 12
如何根据名称列获取包含重复行的列表?这是我期待的结果集:
name age
---- ---
john 15
john 16
sam 10
sam 12
我尝试过类似的方法,但我认为这会给我一个分组结果:
var duplicates = Shop.GroupBy(r => r.Name)
.Where(x => x.Count() > 1)
.Select(val => val.Key);
使用SelectMany
:
var duplicates = Shop.GroupBy(r => r.Name)
.Where(x => x.Count() > 1)
.SelectMany(g=> g);
这将帮助您将在一个集合中具有多个元素的每个组的结果展平
我正在尝试在 LINQ/Entity 框架中构建一个查询,该查询将 return 所有基于一列的重复行。但是,我不想对它们进行分组,我实际上想要获取所有具有重复项的行。
name age
---- ---
john 15
john 16
jack 20
jill 26
sam 10
sam 12
如何根据名称列获取包含重复行的列表?这是我期待的结果集:
name age
---- ---
john 15
john 16
sam 10
sam 12
我尝试过类似的方法,但我认为这会给我一个分组结果:
var duplicates = Shop.GroupBy(r => r.Name)
.Where(x => x.Count() > 1)
.Select(val => val.Key);
使用SelectMany
:
var duplicates = Shop.GroupBy(r => r.Name)
.Where(x => x.Count() > 1)
.SelectMany(g=> g);
这将帮助您将在一个集合中具有多个元素的每个组的结果展平