惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

月光博客
月光博客
IT之家
IT之家
Hugging Face - Blog
Hugging Face - Blog
J
Java Code Geeks
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园 - 叶小钗
MyScale Blog
MyScale Blog
G
Google Developers Blog
Microsoft Azure Blog
Microsoft Azure Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
大猫的无限游戏
大猫的无限游戏
博客园 - 三生石上(FineUI控件)
Google DeepMind News
Google DeepMind News
Engineering at Meta
Engineering at Meta
The Cloudflare Blog
Martin Fowler
Martin Fowler
酷 壳 – CoolShell
酷 壳 – CoolShell
N
Netflix TechBlog - Medium
MongoDB | Blog
MongoDB | Blog
I
InfoQ
WordPress大学
WordPress大学
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
H
Help Net Security

博客园 - Burt

软件项目研发的设计流程 访问IIS元数据库失败解决方法(转) 经典SQL语句大全 js 比较2日期大小 - Burt - 博客园 时间段查询 left join on sql 日期格式转换(convert用法)(转) 分页存储过程 刷新后保持页面滚动条位置C#&VB(转) - Burt - 博客园 Dropdownlist样式设置 - Burt - 博客园 TreeView的遍历(转) 读取天气预报所产生乱码解决方法MiniSite.Weather.print("Wealth") 40种网页常用小技巧(javascript) 页面图象鼠标操作放大和制作图片热点 无法将类型login_aspx转换为System.Web.UI.WebControl c# 发邮件(转摘) [没有相关源的行] 访问被拒绝 水晶报表制作 页面自动刷新以及广告程序得Javascript代码
合并表格,并实现对datatable的group by 功能 - Burt
Burt · 2009-06-24 · via 博客园 - Burt

没有想到好的方法,这是最笨的方法,对datatable的逐行进行汇总。       

     DataTable ddt = new DataTable();
             for (int i = 0; i < dt.Rows.Count; i++)
            {
                string ConnectStrings = dt.Rows[i]["DB_UU_Boat"].ToString();
                DataTable dtrows = gs.GetLostCountDetail(ConnectStrings, dayNum);
                ddt.Merge(dtrows);//合并表格
            }
            DataView dv = ddt.DefaultView;
            dv.Sort = "visitTime";//排序,按照字段visitTime进行排序
            ddt = dv.ToTable();//保存排序后的table
            DataTable dtds = ddt.Clone();//新建一个结构相同的表格,用来存放结果
            string ssc = "";
            for (int i = 0; i < dv.Count; i++)
            {
                if (ssc == ddt.Rows[i]["visitTime"].ToString())//如果是重复的,则跳过!
                {
                    continue;
                }
                string sB = ddt.Compute("Sum(D_count)", "visitTime=" + ddt.Rows[i]["visitTime"].ToString()).ToString();//根据相同的visitTime来汇总D_count
                ssc = ddt.Rows[i]["visitTime"].ToString();
                DataRow dtro = dtds.NewRow();//新建一个datarow,来承接汇总后的数据
                dtro[0] = sB;
                dtro[1] = ssc;
                dtds.Rows.Add(dtro);//把得到新数据添加到新表中
            }