在neo4j

时间:2018-06-24 09:15:12

标签: graph neo4j tree cypher py2neo

假设我有一个带有3种不同节点(例如type Atype Btype C)的neo4j图。

有:

  • type A的5个节点
  • type B的40个节点
  • type C的200个节点

type A的每个节点都连接到type B(A -> B))中的一个或多个,而type B的每个节点都连接到{{1} }(type C)。

类型B的一个节点可以由一个以上的类型A节点(B -> C)共享,类型C的一个节点可以由一个以上的类型B节点(A1 -> B1, A2 -> B1)共享。

(B1 -> C1, B2 -> C1)的任何节点都不能与type A的任何节点连接。如上所述,这些关系是有方向的。

对于type C的给定节点,我能否找出连接网络中的所有节点,即从该节点出现的整棵树,而不仅仅是立即连接的节点?

因此,基本上,我正在寻找一种type A函数或密码查询,该查询可以为我提供从给定节点出现的完整树或完整网络。

1 个答案:

答案 0 :(得分:1)

此查询是否满足您的需求?

MATCH p=(a:A)-->(b:B)-->(c:C)
WHERE a.id = 'your id' // your condition to find your specific A node
RETURN p