datatable 数据分组

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了datatable 数据分组相关的知识,希望对你有一定的参考价值。

DataTable结构为
DataTable dt = new DataTable("dataTable");
dt.Columns.Add("title", typeof(string));
dt.Columns.Add("bCount", typeof(int));
dt.Columns.Add("dCount", typeof(int));
dt.Columns.Add("wCount", typeof(int));
dt.Columns.Add("addDate", typeof(DateTime));
这个表中有几千条数据 是存在xml中的。 如何对addDate字段分组呢?
类似:sql==>group by addDate

条件1:因为种种原因这个表不能存入数据库 所以不能用数据库来做分组

条件2:如果回答说用循环一直判断下去的话还是不要回答的好,以免降低你的采纳率
1楼无语 难道还要我写添加数据的代码上来吗?

我只是贴出表结构 添加数据的代码有几千行我怎么贴

再说DataTable有add这个方法吗

因为只是对一个字段进行分组,所以利用DataView进行排序也能达到效果???

是吗??

简直是天方夜谭。。。
参考技术A 因为只是对一个字段进行分组,所以利用DataView进行排序也能达到效果

DataTable dt = new DataTable("dataTable");
dt.Columns.Add("title", typeof(string));
dt.Columns.Add("bCount", typeof(int));
dt.Columns.Add("dCount", typeof(int));
dt.Columns.Add("wCount", typeof(int));
dt.Columns.Add("addDate", typeof(DateTime));

DataView dv = new DataView();
dv = dt.DefaultView;
dv.Sort = "addDate"; //排序
dt = dv.ToTable();
参考技术B 你的这个只是初始化这个DataTable而已,还没有添加数据,然后你在Add的时候:dt.Row。Add() 可以用orderby addDate啊
还有一种方法就是用Linq 都是orderby addDate Desending

那你就用linq吧
参考技术C 林海峰iesich谁信社这个在哦个

将DataTable中数据进行分组,不写SQL

是这样的,一个DATASET中有几个DATATABLE,然后将这个DATASET中的数据传到水晶报表中进行显示,要求一页显示14条,请问应该怎么弄?

参考技术A SELECT * FROM
(
SELECT A.*, ROWNUM RN
FROM (SELECT * FROM TABLE_NAME) A
WHERE ROWNUM <= 14

)
WHERE RN >= 1追问

说了不写SQL啊

追答

那你去代码区去问。。。

以上是关于datatable 数据分组的主要内容,如果未能解决你的问题,请参考以下文章

winform中如何对一个 datatable 中的数据 进行 分组统计 需要 count 和group by

Datatable数据分组

DataTable实现分组

将DataTable中数据进行分组,不写SQL

【.net】datatable分组,然后分成多个表或者多个集合

C#从dataTable 分组统计数据问题