大家好,我的数据表来自我的数据库,如下所示
Name Total
XYZ 20
XYZ 20
ABC 20
现在我想让我的数据表如下
Name Total
XYZ 40
ABC 20
我linq
从这里尝试了这个查找重复记录并将记录合并到单个数据表c#中,它工作正常,但是由于我从数据库中获取我的值,所以我不知道变量的类型,所以有人可以帮助我并给我非解决方案链接方式
大家好,我的数据表来自我的数据库,如下所示
Name Total
XYZ 20
XYZ 20
ABC 20
现在我想让我的数据表如下
Name Total
XYZ 40
ABC 20
我linq
从这里尝试了这个查找重复记录并将记录合并到单个数据表c#中,它工作正常,但是由于我从数据库中获取我的值,所以我不知道变量的类型,所以有人可以帮助我并给我非解决方案链接方式
如果您有两张桌子,并且想要将它们全部组合起来,那么下面就是您所追求的
SELECT bothTables.Name, SUM(total) FROM
(
SELECT Name, SUM(total) as total FROM Table_1 GROUP BY Name
UNION ALL
SELECT Name, SUM(total) as total FROM Table_2 GROUP BY Name
) AS bothTables
GROUP BY bothTables.Name
ORDER BY bothTables.Name desc
或者如果您想使用您的数据表(本例中为 dt)来执行此操作
var summedValues = from table in dt.AsEnumerable()
group table by table.Field<string>("Name")
into groupedTable
select new
{
Name = groupedTable.Key,
Total = groupedTable.Sum(x => x.Field<int>("Total"))
};
解决方案的 SQL 版本将是:
select Name, sum(Total) group by Name