我有以下数据:
A --> B
B --> C
考虑这个问题:
START n = node(A, B)
MATCH p = n-[*..2]-(x)
RETURN n.Name, x.Name, length(p)
从2个输入节点开始,遍历到不超过2个跃点的其他节点。
返回以下内容:
==> +------------------------------------------------+
==> | n.Name | x.Name | length(p) |
==> +------------------------------------------------+
==> | "A" | "C" | 2 |
==> | "B" | "C" | 1 |
背景故事:在我的应用中,您可以搜索兴趣(一次多个)。每个利益都可以有相关的利益。有时,输入的利益有共同的利益,导致重复的利益。
答案 0 :(得分:0)
看起来只是简单地调用MIN
来完成我正在寻找的东西:
RETURN x.Name, min(length(p))
因此,它将按x.Name分组,并采用最小的跃点列。
http://docs.neo4j.org/chunked/stable/query-aggregation.html
聚合可以在所有匹配的子图上完成,也可以 通过引入关键值进一步划分。这些是非聚合的 表达式,用于对进入的值进行分组 聚合函数。