需求是需要統計數據庫中表某一列的總數量,同時以List的形式返回到UI層。
Linq to SQL中的Group by用法如下:
IList<Unit.HandleCountClass> result; result = (from a in db.handleinfo_users group a by a.han_Server into g select new HandleCountClass { type = g.Key, Handlecount = g.Count() }).ToList();
<補充說明>
1、返回的格式是List,它的參數形式是某個對象,但由於是統計Count()后的總數量,現有的對象類中沒有可以滿足的,所以我在Unit共用層定義一個HandleCountClass的類,類的結構代碼會在后面進行介紹。
2、g.key指的就是Group by的字段名,如在我的這個例子當中,就是han_Server字段。
HandleCountClass類:
public class HandleCountClass { public string type; public int Handlecount; }
相應的SQL代碼如下:
select han_Server,COUNT(han_Server) as Servercount from handleinfo_users group by han_Server