欢迎来到代码驿站!

.NET代码

当前位置:首页 > 软件编程 > .NET代码

如何在datatable中使用groupby进行分组统计

时间:2021-06-22 09:34:54|栏目:.NET代码|点击:

本文介绍了在datatable中使用groupby进行分组统计,下面是为大家分享的效果图和实现代码:

实现效果

在SQL中我们可以使用groupby来进行分组统计,如果数据在datatable中该如何使用groupby呢,下面的方法可以实现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("区域 "+" 库房"+"  数量"); 
      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进行分组统计就是通过上面的代码进行实现的,希望可以对大家的学习有所帮助。

上一篇:C# ComboBox的联动操作(三层架构)

栏    目:.NET代码

下一篇:Asp.net 网站性能优化二则分享

本文标题:如何在datatable中使用groupby进行分组统计

本文地址:http://www.codeinn.net/misctech/146001.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有