如何对datatable中的数据进行删选以及合并行

花果山主力 .Net工程师  2015-09-10 11:37:35
如题,我从数据库查出来一组数据并放到了datatable中 现在要把这个datatable里面重复的数据给合并在一起 然后再放到一个新的datatable
比如这个表中中三条这样的数据:
姓名 部门 分数

张三 研发部 96

张三 研发部 99

张三 研发部 89
然后把这样的数据合并成这样一行的数据并放到新的datatable中:

张三 研发部 284(284是上面3条数据分数列相加的和)
这个datatable中至少有400条+的数据,求一种能够快速去重的写法
...全文
138 点赞 收藏 7
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
xqchenxue2 2015-09-14
如1楼所说,再请求一下数据库不行么; 如果真的要在程序里实现又不用数据的话,就循环呗,循环前,先排序,一次循环就搞定了;
回复
-小蕾- 2015-09-14
可以先循环datatable, //定义筛选条件,循环第一条数据的姓名和部门,把相同的数据筛选出来 string sql = string.Format("姓名=‘{0}’ and 部门='{1}'", name,dept); //从Dataset中筛选符合条件的行的集合 DataRow[] drr = ds.Tables[0].Select(sql); //遍历获得行的集合 计算这些数据的合计 foreach (DataRow dr in drr) { }
回复
Pact_Alice 2015-09-11
select 姓名, 部门,sum(分数) as 分数 into Newdatatable from datatable group by 姓名 ,部门
回复
等不到来世 2015-09-11
400条数据量不大,写个两层循环就行。各种方法请参考: http://www.cnblogs.com/sydeveloper/archive/2013/03/29/2988669.html
回复
shildkix 2015-09-11
insert into 新datetable(姓名,部门,分数) select 姓名,部门,sum(分数) from datetable group by 姓名,部门
回复
Pact_Alice 2015-09-11
引用 2 楼 qq_21920981 的回复:
楼上您好 不是操纵数据库 是操纵datatable
是表啊,按照我的查询语句,将datatable换成你库里的指定表名称就好了
回复
花果山主力 2015-09-11
楼上您好 不是操纵数据库 是操纵datatable
回复
相关推荐
发帖
疑难问题
创建于2007-09-28

2.1w+

社区成员

MS-SQL Server 疑难问题
申请成为版主
帖子事件
创建了帖子
2015-09-10 11:37
社区公告
暂无公告