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;) –