如何在datatable中使用groupby進行分組統(tǒng)計
更新時間:2015年08月11日 14:29:21 作者:zx13525079024
如何在datatable中進行分組,并且計算分組后每組的數(shù)量,考慮了一下,可以使用LINQ來實現(xiàn)datatable分組,需要的朋友可以參考下
本文介紹了在datatable中使用groupby進行分組統(tǒng)計,下面是為大家分享的效果圖和實現(xiàn)代碼:
實現(xiàn)效果

在SQL中我們可以使用groupby來進行分組統(tǒng)計,如果數(shù)據(jù)在datatable中該如何使用groupby呢,下面的方法可以實現(xiàn)groupby,代碼如下:
DataTable dt = new DataTable("cart");
DataColumn dc1 = new DataColumn("areaid", Type.GetType("System.String"));
DataColumn dc2 = new DataColumn("house", Type.GetType("System.String"));
DataColumn dc3 = new DataColumn("seq", Type.GetType("System.String"));
DataColumn dc4 = new DataColumn("remark", Type.GetType("System.String"));
dt.Columns.Add(dc1);
dt.Columns.Add(dc2);
dt.Columns.Add(dc3);
dt.Columns.Add(dc4);
DataRow dr = dt.NewRow();
dr["areaid"] = "北京";
dr["house"] = "北京倉庫";
dr["seq"] = "2";
dr["remark"] = "貨到付款";
dt.Rows.Add(dr);
DataRow dr1 = dt.NewRow();
dr1["areaid"] = "北京";
dr1["house"] = "上海倉庫";
dr1["seq"] = "1";
dr1["remark"] = "貨到付款";
dt.Rows.Add(dr1);
DataRow dr2 = dt.NewRow();
dr2["areaid"] = "上海";
dr2["house"] = "上海倉庫";
dr2["seq"] = "1";
dr2["remark"] = "貨到付款";
dt.Rows.Add(dr2);
DataRow dr3 = dt.NewRow();
dr3["areaid"] = "上海";
dr3["house"] = "北京倉庫";
dr3["seq"] = "1";
dr3["remark"] = "貨到付款";
dt.Rows.Add(dr3);
var query = from t in dt.AsEnumerable()
group t by new { t1 = t.Field<string>("areaid"), t2 = t.Field<string>("seq") } into m
select new
{
areaid = m.Key.t1,
seq = m.Key.t2,
house = m.First().Field<string>("house"),
rowcount = m.Count()
};
Console.WriteLine("區(qū)域 "+" 庫房"+" 數(shù)量");
foreach (var item in query.ToList())
{
if (item.rowcount>1)
{
MessageBox.Show(item.areaid+"---"+item.house);
}
Console.WriteLine(item.areaid+"---"+item.house+"---"+item.rowcount);
Console.WriteLine("\r\n");
}
在datatable中使用groupby進行分組統(tǒng)計就是通過上面的代碼進行實現(xiàn)的,希望可以對大家的學習有所幫助。
相關(guān)文章
C#實現(xiàn)生成mac地址與IP地址注冊碼的兩種方法
這篇文章主要介紹了C#實現(xiàn)生成mac地址與IP地址注冊碼的兩種方法,非常實用的技巧,需要的朋友可以參考下2014-09-09
使用策略模式實現(xiàn)報警服務(wù)示例詳解(短信報警)
服務(wù)的功能:這個服務(wù)就是能夠?qū)崿F(xiàn)多通路報警的服務(wù),比如郵件報警、客戶端報警、短信報警等,該服務(wù)靈活性還不錯,比較方便擴展2014-01-01

