使用查询检查包含表A中的数据

时间:2013-08-12 07:20:12

标签: vb.net linq

我有2个表,表A和表B.首先,我使用以下查询从表A中选择单个列:

Dim loadName = From a In db.Staff Where a.Rank = "E" Select a.Name

数据包含N1N2N3N4。然后我写第二个查询来从Account表中选择所有Name,其中包含Staff表中的Name,在我的Account表中包含数据:

AccountNo | Name
------------------
A001      | N2
A002      | N3
A003      | T1


我使用以下查询从帐户表中选择所有帐户:

Dim loadAcc= From b In db.ACCOUNT Where b.AccountName.Contain(loadName.Any) Select b 

预期结果如下:

AccountNo | Name
------------------
A001      | N2
A002      | N3

但我无法得到预期的结果。我查询中的任何错误?感谢

2 个答案:

答案 0 :(得分:0)

在这里看起来像一个简单的JOIN

Dim results = From a In db.Account
              Join s In db.Staff On a.Name Equals s.Name
              Select a

答案 1 :(得分:0)

Loadname.any如果有任何元素,则结果为true。

第一部分检查accountname是否包含true。

我认为你可以用另一种方式做到这一点。

其中loadname.contains(b.accountname)