C#在datatable中怎么筛选数据?

2024-11-06 01:27:54
推荐回答(3个)
回答1:

DataTable可以通过select来筛选数据 datatable.select("");

你的需求貌似需要分组可以用linq

回答2:

要明确需求是什么,你上面的描述也许不是筛选,说是分组更确切些。

回答3:

对DataTable数据各种筛选
筛选一个DataTable的数据,赋值给另外一个DataTable
假设:
有2个DataTable:DataTable A、DataTable B。
要求:
筛选DataTable A中itemType字段值为book的数据,然后把筛选出来的数据,赋给DataTable B
实现:
(1)方法一:通过 RowFilter 筛选实现
DataView view = new DataView();
view.Table = A;
view.RowFilter = "itemType = 'book'";//itemType是A中的一个字段
B= view.ToTable();
(2)方法二:通过 Select()筛选
DataRow[] rows = A.Select("itemType = 'book'");
B= A.Clone(); //克隆A的结构
foreach (DataRow row in rows)
{
B.ImportRow(row);//复制行数据
}
注:如果有多个筛选条件的话,可以加 and 或 or。例如: A.Select("itemType = 'book' and a='b' or a='c'");