0

我正在使用 Windows 应用程序。我有两个名为“dt1”和“dt2”的数据表。

在“dt1”我有一些像

ID Name Group
1  A1    G1
2  A2    G1
2  A2    G2
3  A3    G2
3  A3    G1
4  A4    G2
5  A5    G2 

AND 在第二个表“dt2”中,

ID NAME  
1  A1
2  A2
3  A3
4  A4
5  A5
6  A6

现在我想要过滤行“dt1”中的“dt2”行说id - 1,2,它也存在于“dt2”中。

所以基本上我想要一个数据表的行来自另一个被过滤的数据表。

任何人都可以给出一些想法如何得到这个?

4

1 回答 1

0

最有效和最简单的方法是使用Linq-To-DataSet两个join表:

Dim result = From r1 In dt1.AsEnumerable()
             Join r2 In dt2.AsEnumerable()
             On r1.Field(Of Int32)("ID") Equals r2.Field(Of Int32)("ID")
             Select r2

如果你想要结果,什么是IEnumerable(Of DataRow), 为DataTable

Dim tblResult = result.CopyToDataTable()
于 2012-08-24T07:13:01.443 回答