【发布时间】:2015-06-27 18:39:12
【问题描述】:
我有 2 个表,Table1 和 Table2。
**Table1**
Id Name
------------
14443 Michael
55658 Brian
84321 Lisa
335896 NULL
1035 Maya
5221296 Brenda
**Table2**
Id1 Id2 MatchLevel
--------------------------
14443 5221296 0,5192
14443 84321 0,8647
14443 182347 0,6897
**1035 14443** 0,9999
14443 4572311 0,8569
63547 14443 0,9563
335896 14443 0,9418
14443 5221296 0,6942
**55658 5221296** 0,9928
55658 84321 0,8647
55658 182347 0,6897
1035 55658 0,6796
55658 4572311 0,8569
63547 55658 0,9563
335896 55658 0,9418
55658 5221296 0,6942
Table2中的Id1和Id2是对Table1中Id的引用
对于每个人(表 1 中的 ID),我想选择表 2 中匹配级别最高的行,不包括名称为 NULL 的人。
上面的表格应该返回类似下面的内容:
1035 14443 0,9999 (Michael)
55658 5221296 0,9928 (Brian)
LINQ 查询的外观如何?如果它不是 Lambda 表达式,我将不胜感激。
【问题讨论】:
-
您的 ORM 映射中是否为该表定义了关系?
标签: c# linq linq-to-sql