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

所属分类: 软件编程 / C#教程 阅读数: 58
收藏 0 赞 0 分享

本文介绍了在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#抽象类与抽象方法详解

这篇文章主要为大家详细介绍了C#抽象类与抽象方法的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

C#代码实现扑克牌排序的几种方式

今天小编就为大家分享一篇关于C#代码实现扑克牌排序,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
收藏 0 赞 0 分享

C#泛型概念的简介与泛型的使用

今天小编就为大家分享一篇关于C#泛型概念的简介与泛型的使用,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
收藏 0 赞 0 分享

C# 7.0 使用下划线忽略使用的变量的原因分析

这篇文章主要介绍了C# 7.0 使用下划线忽略使用的变量的原因浅析,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

C# 中使用正则表达式匹配字符的含义

正则表达式的作用用来描述字符串的特征。本文重点给大家介绍C# 中使用正则表达式匹配字符的含义,非常不错,具有一定的参考借鉴价值,需要的朋友参考下吧
收藏 0 赞 0 分享

C# Dictionary和SortedDictionary的简介

今天小编就为大家分享一篇关于C# Dictionary和SortedDictionary的简介,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
收藏 0 赞 0 分享

C#中SQL Command的基本用法

今天小编就为大家分享一篇关于C#中SQL Command的基本用法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
收藏 0 赞 0 分享

C#使用SQL DataReader访问数据的优点和实例

今天小编就为大家分享一篇关于C#使用SQL DataReader访问数据的优点和实例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
收藏 0 赞 0 分享

C#使用SQL Dataset数据集代码实例

今天小编就为大家分享一篇关于的文章,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
收藏 0 赞 0 分享

C#使用SQL DataAdapter数据适配代码实例

今天小编就为大家分享一篇关于C#使用SQL DataAdapter数据适配代码实例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
收藏 0 赞 0 分享
查看更多