我想運行一個linq查詢,該查詢將返回值到我的自定義DTO。這個特定的linq查詢將需要考慮來自多個表的聯接,使用switch case語句,count(*)和Linq查詢與表連接,case語句,count,group by子句
這是查詢的SQL版本示例,我將需要LinQ等效項...
select
slm.SLType,
count(c.EStatID) as EStat,
COUNT(cpd.TrId) as Training,
COUNT(
CASE WHEN cpd.TrStat= 44 THEN 1
WHEN cpd.TrStat!= 44 THEN NULL
WHEN cpd.TrStat IS NULL THEN NULL
END) as TrainingComplete,
COUNT(
CASE WHEN cpd.CndAssess = 44 THEN 1
WHEN cpd.CndAssess != 44 THEN NULL
WHEN cpd.CndAssess IS NULL THEN NULL
END) as AssessmentComplete
from TabC c , TabCPD cpd, TabSLM slm
where cpd.SLid = slm.SLid
and c.Id= cpd.CID
and c.O_Id = 1
group by slm.SLType
它以下列格式返回記錄。我將每條記錄都放在一個換行符中,並用逗號分隔。下面的數字只是作爲一個例子
TypeA, 0 , 1 , 1, 0
TypeB, 1 , 0 , 1, 0
我試圖創建類似下面的一個沒有多少運氣的格式LINQ查詢
MyCustomTableC_DTO將在每個字段屬性查詢。任何想法如何做到這一點?查詢我將用它來建立類型的列表MyCustomTableC_DTO
感謝您的時間...
您可以將表前綴('c.','cpd.','slm.')添加到您的查詢中,以便我們知道哪個列屬於哪個表? – Diego 2012-02-19 19:24:24
完成。編輯的問題。 – user20358 2012-02-19 19:55:42