我想知道我可以更改以下SQL語句轉換成的LINQ或拉姆達擴展在C#與多個轉換SQL連接到LINQ
SELECT m.mdes as AgeGroup,COUNT(DISTINCT(mbcd))as "No.of Member" FROM mageg m
LEFT JOIN (select distinct(mbcd) ,mage
FROMtevtl
JOIN mvipm
ON tevtl.mbcd = mvipm.mvip
WHERE datm >= '2014-04-01'
AND datm <= '2014-04-30'
)vip
ON m.tage >= vip.mage AND m.fage <= vip.mage
GROUP BY m.mdes
我能做到的LINQ聲明的前半部分。不知道如果這是正確的 這裏是上半場。我不知道如何連接左連接。
(from mem in mvipms
from log in tevtls
from grp in magegs
where mem.mage >=grp.fage && mem.mage <=grp.tage && mem.mvip.Equals(log.mbcd)
&& log.datm >= DateTime.Parse("2014-04-01") && log.datm <= DateTime.Parse("2014-04-30")
select new {mem.mvip,grp.mdes}).Distinct()
請指教。我正在使用MSSQL 2008和VS2010。
非常感謝。
實體框架? –
我建議用這樣一個問題,將原始表格和屬性名稱更改爲更加自我解釋的內容。此外,可以通過添加查詢類型的說明來改善問題,例如「用間隔條件分組的左連接」或類似的。當然,樣本數據也會有幫助。 –