如何解决C#如何将两个DataTable行合并为一行
我有一个数据表,看起来像下面,它是从数据库中填充的
如何使结果如下所示
对不起,我的解释不好,非常感谢
解决方法
您需要编写如下内容:
Select
PN,[Description],Sum(January) AS January,Sum(February) AS February,Sum(March) AS March,Sum(April) AS April
FROM [YourTable]
GROUP BY
PN,[Description]
,
如果要使用Datatable而不是SQL,可以使用:
dt = dt.AsEnumerable()
.GroupBy(r => new {PN = r["PN"],Description = r["Description"]})
.Select(g =>
{
var row = dt.NewRow();
row["PN"] = g.Key.PN;
row["Description"] = g.Key.Description;
row["January"] = g.Sum(r => r.Field<int>("January"));
row["February"] = g.Sum(r => r.Field<int>("February"));
row["March"] = g.Sum(r => r.Field<int>("March"));
row["April"] = g.Sum(r => r.Field<int>("April"));
return row;
})
.CopyToDataTable();
请参阅:How do I use SELECT GROUP BY in DataTable.Select(Expression)?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。