0
我使用實體框架6.1.1和我有加入一個表對另一個select語句的查詢:實體框架連接表對查詢
SELECT *
FROM Table1 T1
LEFT OUTER JOIN (SELECT * FROM Table2 WHERE Field = 123) AS T2 ON T1.Field = T2.Field
是否有可能寫出像這樣使用實體框架的查詢語法?
我使用實體框架6.1.1和我有加入一個表對另一個select語句的查詢:實體框架連接表對查詢
SELECT *
FROM Table1 T1
LEFT OUTER JOIN (SELECT * FROM Table2 WHERE Field = 123) AS T2 ON T1.Field = T2.Field
是否有可能寫出像這樣使用實體框架的查詢語法?
from t1 in Table1
join t2 in Table2.Where(t => t.Field == 123) on t1.Field equals t2.Field into t2j
select new {
T1 = t1,
T2 = t2j.DefaultIfEmpty(),
}
可以過濾Table2
之前加入,然後使用組加入+ DefaultIfEmpty
從https://msdn.microsoft.com/en-us/library/bb397895.aspx:
可以使用LINQ執行通過調用DefaultIfEmpty方法左外連接對一個組加入的結果。