gpt4 book ai didi

arrays - 属性数组的总和

转载 作者:行者123 更新时间:2023-12-02 09:37:32 25 4
gpt4 key购买 nike

我将属性设置为整数数组:

MATCH (n:Node) where id(n) = 1 set n.prop = [1,2,3,4]

然后尝试调用属性的总和:

MATCH (n:Node) where id(n) = 1 return sum(n.prop)

但我只收到错误语句,而不是 10:

SUM(n.prop) can only handle numerical values, or null.

我做错了什么,应该怎么做?非常感谢。

最佳答案

您收到此错误的原因是您正在传递 sum 一个列表,而它需要一个数字。你无法对一个列表进行求和。 ["Hello", "Goodbye"] 的总和是多少? Sum 旨在用于执行诸如求和整数属性之类的操作。

您可以使用 reduce 函数对列表中的项目求和,如下所示:

create (f:Foo { myList: [1,2,3,4,5] });

match (f:Foo) with f return reduce(total=0, number in f.myList | total + number);
+------------------------------------------------------+
| reduce(total=0, number in f.myList | total + number) |
+------------------------------------------------------+
| 15 |
+------------------------------------------------------+

Reduce 是 list functions in cypher 之一。 reduce 真正做的是获取一个列表并将其“减少”为单个值。它怎么知道如何减少?通过最后一个表达。我们从总数为零开始,添加数组中的任何项目,并继续这样做,直到数组减少为单个整数。

关于arrays - 属性数组的总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51459841/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com