datatable含日期列,如何根据月份拆分为多个表
1个回答
展开全部
直接遍历DataTable,先根据条件列确定需要建立多少个DataTable或是集合,然后根据条件列的值再遍历一次,将满足条件的行分别放进去就得到了拆分后的表,示例代码如下:
//源数据,就是你要分组的DataTable
DataTable source=new DataTable();
//遍历得到名称列表
List<string> names=new List<string>();
foreach(DataRow dr in source.Rows)
if(!names.Contains(dr[1].ToString()))
names.Add(dr[1].ToString());
//新建数据集,拆分完的表都在这里面
DataSet ds=new DataSet();
for(int i=0;i<names.Count;i++)
{
DataTable dt=new DataTable();
dt.TableName=names[i];
foreach(DataRow dr in source.Rows)
if(dr[1].ToString()==names[i])
dt.Rows.Add(dr);
ds.Tables.Add(dt);
}
//源数据,就是你要分组的DataTable
DataTable source=new DataTable();
//遍历得到名称列表
List<string> names=new List<string>();
foreach(DataRow dr in source.Rows)
if(!names.Contains(dr[1].ToString()))
names.Add(dr[1].ToString());
//新建数据集,拆分完的表都在这里面
DataSet ds=new DataSet();
for(int i=0;i<names.Count;i++)
{
DataTable dt=new DataTable();
dt.TableName=names[i];
foreach(DataRow dr in source.Rows)
if(dr[1].ToString()==names[i])
dt.Rows.Add(dr);
ds.Tables.Add(dt);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询