2011-09-22 54 views
0

以下查詢的正確lambda語法是什麼?使用Lambda在LINQ中使用此SQL查詢的等效代碼

SELECT a.Title, Count(b.Id) FROM a INNER JOIN b on a.Id = b.FK_Id GROUP BY a.Title 

我知道如何使用連接,但不知道如何在這種情況下使用聚合和分組。
謝謝。

+0

的LINQ to SQL?實體框架?數據集? – AakashM

回答

3

我看來像:

var query = from a in TableA 
      join b in TableB on a.Id equals b.FkId 
      group b by a.Title into g 
      select new { Title = g.Key, Count = g.Count() }; 

或非查詢語法:

var query = TableA.Join(TableB, a => a.Id, b => b.FkId, (a, b) => new { a, b }) 
        .GroupBy(z => z.a.Title, z => z.b) 
        .Select(g => new { Title = g.Key, Count = g.Count() });