C# 消除DataTable中的重复记录
我有一个包含以下内容的.NET数据表:C# 消除DataTable中的重复记录,c#,sql,datatable,C#,Sql,Datatable,我有一个包含以下内容的.NET数据表: Date ID1 ID2 1/1/2014 1 a 1/1/2014 2 a 1/1/2014 3 a 2/1/2014 1 b 2/1/2014 2 b 2/1/2014 3 b 3/1/2014 1 c 3/1/2014 2 c 3/1/2014 3 c 如何使用dat
Date ID1 ID2
1/1/2014 1 a
1/1/2014 2 a
1/1/2014 3 a
2/1/2014 1 b
2/1/2014 2 b
2/1/2014 3 b
3/1/2014 1 c
3/1/2014 2 c
3/1/2014 3 c
如何使用datatable方法消除重复项,使其成为
Date ID1 ID2
1/1/2014 1 a
2/1/2014 2 b
3/1/2014 3 c
因此,您希望根据日期和ID2列删除数据表的“副本”。您可以使用Linq来设置数据集
和可枚举。GroupBy
:
tblDate = tblDate.AsEnumerable()
.GroupBy(r => new { date = r.Field<DateTime>("Date"), id2 = r.Field<string>("ID2") })
.Select(g => g.First())
.CopyToDataTable();
tblDate=tblDate.AsEnumerable()
.GroupBy(r=>new{date=r.Field(“date”),id2=r.Field(“id2”)})
.Select(g=>g.First())
.CopyToDataTable();
这只需要每组的第一行,这不是您的结果。但是,您没有提到根据哪一列可能重复的
ID1
规则?如果你只是想比较一下日期,为什么要取第一个日期的第一条记录,第二个日期的第二条记录和最后一个日期的最后一条记录?这是任意的吗?重复日期和ID2,也许我不应该称之为重复。。。