DataTable过滤数据 在程序里取出数据集放在一个DataTable里面,我只是想取出里面的两列A跟B,其中A列有很多重复值,我想去掉重复值,改如何做呢。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 先在 MSDN 里看下 DataTable 的所有方法和属性吧! Group By 按某一字段值分组 DataTable dt;DataTable newdt=dt.DefaultView.ToTable(true, new string[] { "id" }); 不重复时可以用Sql控制 只取A和B 那你可以for(int i=0;i<datatable.rows.count;i++){string A+=datatable.rows[i][A].tostring();string B+=datatable.rows[i][B].tostring();} 应该没有直接的方法去获取,LZ可以另外新建一个DataTable,然后增加二个字段,再对你的数据集DataTable循环获取值,其中在循环的时候可以写另一个方法去判断当前列是否有此值,有即continue,这样就可以去掉重复,大概思路是这样 如果你的 DataTable 中的数据是来自于数据库,那么在填充数据之前就该在 SQL 语句中过滤重复的内容,而不该在 DataTable 中做处理,毕竟在查询过程处理要来得方便。 我的思路: 用sql查出你要的两列数据, 有重复的数据放在list里, 用linq去除重复数据。 直接在sql语句不就能解决了吗 Datarow[] dr=dt.select("条件"); select A,B from TableName where A in (select distinct A from TableName) 最好用SQL语句直接过滤这样既方便 速度又快 循环老table插入新table 循环体中判断是否已存在 建议在写sql语句时就将重复的记录过滤掉。。 【求助】将多个GridView导出到同一个Excel c#多个客户端通过服务器进行数据传输 关于工作流的问题 新手委托问题 chechboxlist排成一行! 我想把本地机上的一个文件传到另外一台机器的共享目录中,我想把用户名和密码写进程序里,如何写? 用Using打开数据库连接时,如果碰到异常,资源会释放吗?? 第三方控件DevComponents.DotNetBar里的advTree控件刷新节点问题 在C#中,如何获得Datagrid当前列某一栏位的值.(与VB.NET不一样) 利用c#程序怎么做成通常意义的三层? C#窗体切换 C#代码连接数据库一直连接不上
DataTable newdt=dt.DefaultView.ToTable(true, new string[] { "id" });
for(int i=0;i<datatable.rows.count;i++){
string A+=datatable.rows[i][A].tostring();
string B+=datatable.rows[i][B].tostring();
}
用sql查出你要的两列数据,
有重复的数据放在list里, 用linq去除重复数据。
这样既方便 速度又快