计算每次旅行的关系数

时间:2018-10-04 12:20:07

标签: neo4j cypher

我有一个用这种模式组成的图形数据库:

(start)-[:Trip]->(end)

我想返回起点和终点之间的行程数,以及每个不同的Trip((start)-[r]->(end))的行程数。

如何在Cypher中做到这一点?

这是我尝试过的:

 MATCH p=(n)-[r]->()
 WITH COLLECT(p) as X
 UNWIND X.r as y
 return count(y)

更新我的问题

假设 行程=

     (start_node)-[relationship]->(end_node)

示例:

(Tunis)-[r1]->(Sfax)
(Tunis)-[r2]->(Sfax)
(Tunis)-[r3]->(Sousse)
(Tunis)-[r4]->(Sousse)
(Tunis)-[r5]->(Sousse)

=> (突尼斯)和(斯法克斯)之间的旅行次数为2

(突尼斯)和(苏斯)之间的旅行次数为3

那就是我想要的。

1 个答案:

答案 0 :(得分:2)

您只需要使用聚合运算符count即可:

MATCH (start)-[:Trip]->(end)
RETURN start, end, count(*)