我的neo4j中有这个节点。它是关于一棵家谱。
以下是图片:Graph View
我想从叶子中找到给定节点的所有邻居。那可能吗?有谁可以帮助我?
说明:
此Cypher查询返回'Lucas Hankinson'的所有孙子:
MATCH(n:FamilyTree{name: 'Lucas Hankinson'})-[*2..2]->(m) RETURN collect(m)
如果我得到卢卡斯的一个孙子的名字,我想看到他/她的堂兄弟和兄弟姐妹(基本上是那个孙子的邻居节点)我怎样才能在Cypher查询中这样做。
答案 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)
谢谢, 维沙尔