热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

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

如何在datatable中进行分组,并且计算分组后每组的数量,考虑了一下,可以使用LINQ来实现datatable分组,需要的朋友可以参考下

本文介绍了在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("areaid"), t2 = t.Field("seq") } into m 
            select new 
            { 
              areaid = m.Key.t1, 
              seq = m.Key.t2, 
              house = m.First().Field("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进行分组统计就是通过上面的代码进行实现的,希望可以对大家的学习有所帮助。


推荐阅读
  • SeMITechnologies正在使用矢量搜索引擎Weaviate构建的内容。SeMI的首席执行官兼联合创始人BobvanLuijt说,它是一种独特的AI优先数据库,使用机器学习 ... [详细]
  • OleDbDataAdapter充当DataSet和数据源之间的桥梁,用于检索和保存数据。OleDbDataAdapter通过以下方法提供这个桥接器:使用Fill将数据从数 ... [详细]
  • 动态分页实现
    Code分页存储过程CREATEprocedurePagersqlstrnvarchar(4000),--查询字符串currentpageint,--第N页pagesizeint- ... [详细]
  • 提交后Activity4新 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 使用Spring AOP实现切面编程的步骤和注意事项
    本文介绍了使用Spring AOP实现切面编程的步骤和注意事项。首先解释了@EnableAspectJAutoProxy、@Aspect、@Pointcut等注解的作用,并介绍了实现AOP功能的方法。然后详细介绍了创建切面、编写测试代码的过程,并展示了测试结果。接着讲解了关于环绕通知的使用方法,并修改了FirstTangent类以添加环绕通知方法。最后介绍了利用AOP拦截注解的方法,只需修改全局切入点即可实现。使用Spring AOP进行切面编程可以方便地实现对代码的增强和拦截。 ... [详细]
  • Win7激活错误代码0xc004e003怎么解决?
    一般情况下当我们在安装win7系统之后,都是需要进行激活才能够正常使用所有功能,而最近有用户反映说win7激活失败提示错误代码0xc004e003,这是怎么回事?怎么解决呢?为此, ... [详细]
  • java代码利用aspose,java初学者代码
    本文目录一览:1、aspose.cellsjava合并excel ... [详细]
  • exportdefaultclassIndexextendsComponent{Taro.setNavigationBarTitle({title:this.$rout ... [详细]
  • 云开发与
    大家好,今天我来为大家分享一下,Linux命令查询小程序中的WePY云开发实践。WhyWePY首先,先分享一下为什么要选择WePY?在项目开始进行选型的时候,我可选的底层框架有We ... [详细]
  • C#datatable序列化后整数带有小数点或者小数点变成整数原来datatable的列有个datatype属性,可以指定为int类型或者decimal类型的,如果指定int类型, ... [详细]
  • 将熊猫数据框中的浮点数转换为整数原文:https://www. ... [详细]
  • 安卓ndk开发!高级Android晋升之View渲染机制,附答案
    缘起深圳市腾讯计算机系统有限公司成立于1998年11月,是中国最大的互联网综合服务提供商之一,也是中国服务用户最多的互联网企业之一。腾讯业务多元化& ... [详细]
  • 优酷如何去广告?优酷去广告方法
    优酷如何去广告?优酷应该是大家最常使用的视频播放器了,然而优酷的广告也是很多,那么要如何去除烦心的广告呢?下面小编给大家分享优酷去广告的小技巧,请大家笑纳!步骤如下:1、找到hos ... [详细]
  • idea 正则表达式搜索替换应用详解_正则表达式
    这篇文章主要介绍了idea正则表达式搜索替换应用详解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值, ... [详细]
author-avatar
一直很哇塞
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有