gpt4 book ai didi

neo4j - count(nodes(p)) 在 Cypher、Neo4j 中如何工作

转载 作者:行者123 更新时间:2023-12-03 03:33:43 25 4
gpt4 key购买 nike

我正在寻找其工作原理以及为什么不返回路径中节点数的解释。假设我匹配了一条路径p。现在:

WITH p, count(nodes(p)) AS L1 RETURN L1

返回 1。

当这一点明确后,我如何正确计算路径节点?

最佳答案

count() 是一个聚合函数。使用任何聚合函数时,结果行将按 RETURN 子句中包含的内容(而不是聚合函数)进行分组。在这种情况下,结果行将按 p 分组,返回值将为 count(nodes(p))。

nodes(p) 返回节点的数组,因此 count(nodes(p)) 将返回数组的计数,并将始终等于1

为了返回路径中的节点数量,您应该使用size(nodes(p))

如果您只是对路径的长度感兴趣,而不是特别对其中包含的节点感兴趣,我会鼓励您使用length(p)。这将返回给定路径的 rel 长度,而无需操作/访问节点。

关于neo4j - count(nodes(p)) 在 Cypher、Neo4j 中如何工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29141415/

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