【发布时间】:2016-05-31 07:22:19
【问题描述】:
我正在尝试在我的一个项目中使用 Linq.Js。问题是我必须应用分组,然后在某些列上使用 sum 并选择某些列中的第一个。 例如
var list = [
{ a: 2, b: 4, c: 1 },
{ a: 2, b: 3, c: 7 },
{ a: 2, b: 3, c: 3 },
{ a: 4, b: 7, c: 5 },
{ a: 7, b: 3, c: 2 },
{ a: 4, b: 1, c: 5 }];
结果将是 在 a 上分组,b 的总和并取 c 中的第一个
a:2,b:10,c:1
a:7,b:3,c:2
a:4,b:1,c:5
到现在我都试过了,
var aggregatedObject = Enumerable.From(claimForCalculation)
.GroupBy("$.a", null,
function (key, g) {
var result = {
groupedKey: key,
chargedQty: g.Sum("$.b"),
chargedRate: g.FirstOrDefault("$.c"),
}
return result;
}, function (x) { return x }).ToArray();
但它不起作用。
【问题讨论】: