【问题标题】:How to get sum of fields in Entity Framework Core? [duplicate]如何获取 Entity Framework Core 中的字段总和? [复制]
【发布时间】:2022-01-24 00:36:34
【问题描述】:
我在 SQL Server 中有一个这样的表,在 C# 中有一个带有 Entity Framework Core 的模型类:
| id |
relatedId |
dec1 |
dec2 |
| 1 |
1 |
540000 |
250000 |
| 2 |
1 |
255000 |
200000 |
| 3 |
2 |
100 |
200 |
| 4 |
2 |
500 |
400 |
现在我想分别获取相关 ID 1 和 2 的 dec1 和 dec2 的总和。
像这样:
relatedId1 sum dec1 = 7950000 and sum dec2 = 450000
relatedId2 sum dec1 - 600 and dec2 = 600
在我的 C# 代码中。
谢谢
【问题讨论】:
标签:
c#
entity-framework-core
【解决方案1】:
尝试使用 GroupBy 和 Sum ,就像这样,
var summ = entName.GroupBy(t => t.relatedId)
.Select(t => new
{
relatedId = t.Key,
dec1Sum = t.Sum(d => d.dec1),
dec2Sum = t.Sum(d => d.dec2),
}).ToList();
//print the results
summ.ForEach(t => Console.WriteLine($"relatedId {t.relatedId}, sum for dec1 : {t.dec1Sum}, sum for dec2 : {t.dec2Sum}"));