答案 0 :(得分:1)
sum
是一个聚合函数,因此它在结果集上创建作业,而不是在数组上。
你想要做的是reduce
。
你能试试这个:reduce(s = 0, x IN extract(b IN nodes(p)| coalesce(b.userReputation, 0)) | s + x) AS UserRep
干杯
答案 1 :(得分:0)
对集合中的项执行求和的另一种方法是使用UNWIND
子句。例如,您可以将原始RETURN
子句替换为:
UNWIND NODES(p) AS nd
RETURN p, SUM(nd.userReputation) AS userRep;
注意:上述RETURN
子句也会返回p
,因此aggregation函数SUM
会聚合适当的"键值"。你可能想要返回p
,以便你知道每个总和的路径。