我正在使用py2neo,现在我正在寻找使用递归找到特定节点的所有子节点的最方便的方式。
我正在寻找的是以下想法:
MATCH (:LabelA {id:"C"})-[:to*]->(m:LabelA) RETURN n;
这是它在cypher中的样子。我知道这个查询可以通过graph.run()和传递这个查询来运行。但我想知道是否有人知道是否可以使用graph.match()代码?
查找第一个节点是可能的:
sNode = graph.nodes.match(id="C").first()
firstNode = graph.match((sNode, ), r_type="to")
,我希望有一个结构,如(我试过这个,这不工作:)):
sNode = graph.nodes.match(id="C").first()
nodesFound = graph.match((sNode, ), r_type="to*")
#do something with nodesFound
返回一个列表中所有递归找到的节点。
有人有这方面的经验吗?
对于匹配器没有办法做到这一点。你必须使用Cypher