如何在neo4j中找到节点的邻居?

时间:2017-04-04 04:28:41

标签: c# asp.net neo4j cypher graph-databases

我的neo4j中有这个节点。它是关于一棵家谱。

以下是图片:Graph View

我想从叶子中找到给定节点的所有邻居。那可能吗?有谁可以帮助我?

说明:

此Cypher查询返回'Lucas Hankinson'的所有孙子:

MATCH(n:FamilyTree{name: 'Lucas Hankinson'})-[*2..2]->(m) RETURN collect(m)

如果我得到卢卡斯的一个孙子的名字,我想看到他/她的堂兄弟和兄弟姐妹(基本上是那个孙子的邻居节点)我怎样才能在Cypher查询中这样做。

1 个答案:

答案 0 :(得分:0)

您可以尝试使用路径概念。例如从给定的大孩子名字(例如Elwood Alger)找到使用路径的Grand Parent(在这种情况下是Lucas Hankinson),然后找到所有的大孩子。

<强>查询:

MATCH (gc:FamilyTree{name: 'Elwood Alger'})<--(p:FamilyTree)<--(gp:FamilyTree)
OPTIONAL MATCH (gp) -[*2..2]->(m) WHERE m.name <> 'Elwood Alger' RETURN collect(m)

谢谢, 维沙尔