我有一个数据表,其中包含一组属性,如(名字,姓氏,性别等...) 我想只在两列或属性中计算值的出现次数。
例如,我的数据表中有4列(FirstName,LastName,Age,Gender)。
我想知道数据表中是否有两个或多个记录共享相同的名字和姓氏。
我不知道从哪里开始,任何想法都可以挽救我的一天
谢谢
答案 0 :(得分:2)
是的,您可以使用LINQ(-To-DataTable)。
按包含两个属性的anonympous类型分组:
var duplicates = table.AsEnumerable()
.GroupBy(r => new {
FirstName = r.Field<string>("First Name"),
LastName = r.Field<string>("Last Name")
})
.Where(g => g.Count() > 1)
.Select(g => new { Person = g.Key, Count = g.Count(), Rows = g.ToList() });
答案 1 :(得分:0)
var duplicates = dt.AsEnumerable().GroupBy(r => r[0]).Where(gr => gr.Count() > 1);
dt是数据表。