1
我有3个表A有一个ID和其他字段,B有一个ID,C对A和B中的ID有多对多的关系将SQL组转换为实体框架Lambda表达式
我做了一个查询,得到的结果,我需要
select result.*
from
(SELECT max(A.AID) as AID
FROM A, C
where A.AID = C.AID
group by C.BID) as x, A as result
where result.AID = x.AID
,我想将它转换为实体框架lambda表达式。但目前查询效率不够高。我如何在EF中创建lamda表达式并使其更高效?
我不明白你为什么使用MAX(A.AID),因为在返回的每条记录中总是A.AID = C.AID,而且我会尝试用JOINS更改笛卡尔积(A,C),这可能是在某些情况下效率更高(例如在访问中,我不知道是否也在EF中)。也加入结果表。 –
我正在使用MAX(A.AID),因为我需要每组BID的最大AID。 – limefluff
是的,清楚,没有看到它,错了GROUP BY C.BID与GROUP BY C.AID;) –