【问题标题】:Visual C#, Find records in DataTable A which is or not in DataTable BVisual C#,在DataTable A中查找是否在DataTable B中的记录
【发布时间】:2018-09-30 17:26:50
【问题描述】:

假设 DataTable A 和 B 都有一个列 ID

是否有任何 简洁 方法使用 Linq(不是 for 循环)在 A 中查找在(或不在)B 基中的记录在身份证上!?

例如:

A
---
ID     Value
2        7
2        3
3        5
5        6
7        2
7        5
7        4

B
---
ID     Value
1        3
1        9
2        4
4        6
4        2
7        4
9        3

Results from A which is ALSO in B base on ID
---
ID     Value
2        7
2        3
7        2
7        5
7        4

Results from A which is NOT in B base on ID
---
ID     Value
3        5
5        6

【问题讨论】:

标签: c# linq select filter datatable


【解决方案1】:

使用Any method 可能对您有用。

类似这样的东西,显然取决于你的数据结构:

AInB = A.Where(a => B.Any(b => b.ID == a.ID));

ANotInB = A.Where(a => !B.Any(b => b.ID == a.ID));

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-05
    • 1970-01-01
    • 2013-03-31
    • 1970-01-01
    相关资源
    最近更新 更多