C# Linq to SQL — Group by


需求是需要統計數據庫中表某一列的總數量,同時以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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM