我想寫一個LINQ查詢,它會從兩個SQL Server數據表中得到一些不同的值。LINQ to SQL,加入表以獲得不同的結果?
我有兩個表名爲Facility_Cost_TBL
和Tenant_Bills_TBL
。 然後我有一個名爲Nursing_Home_Name
的列,我試圖從中獲取不同的數據。
這是我在LINQ的努力,但它不工作,
var name = (from f in dataContext.Facility_Cost_TBLs
join t in dataContext.Tenant_Bills_TBLs on f.Tenant_Code equals t.Tenant_Code
where f.Tenant_Code == code && f.Date_Month == date.Month && f.Date_Year == date.Year
select new {Facility_Cost_TBL = f, Tenant_Bills_TBL = t}).Distinct();
這是一個工作的SQL語句,我做了,做我通過T-SQL想要什麼。
SELECT DISTINCT Nursing_Home_Name
FROM (SELECT Nursing_Home_Name
FROM Facility_Cost_TBL
WHERE Date_Year = 2016 AND Date_Month = 10 AND Tenant_Code = 664250
UNION SELECT Nursing_Home_Name
FROM Tenant_Bills_TBL
WHERE Year_Data = 2016 AND Month_Data = 10 AND Tenant_Code = 664250)
a
有人能告訴我什麼LINQ和語法時纔將是什麼LINQ擴展方法查詢什麼樣的?
在你的'LINQ'連接中,你不應該加入'Year'和'Month'嗎? –
@WEI_DBA,我不知道該怎麼做,這就是爲什麼這不起作用。 – KyloRen
Linq語句的問題在於它正在進行內連接,因此如果兩個表都有條目,則只返回結果。 – sgmoore