您是否知道如何编写将返回与节点相关的所有传递关系的密码查询。
例如,如果我有:(node1)-[rel1]->(node2)-[rel2]->(node3)
。
我希望node1
返回rel1
和rel2
的查询。
感谢您的帮助!
答案 0 :(得分:5)
您需要使用变量路径匹配,假设您的起始节点是标记Label
和name='node1'
的节点1:
MATCH path=(node1:Label {name:'node1'})-[*..100]->()
RETURN relationships(path) as rels
relationships
函数返回一个列表,其中包含该路径中的所有关系。最佳做法是为可变深度匹配提供上限,这里我将其任意设置为100。
获取关系的id:
MATCH path=(node1:Label {name:'node1'})-[*..100]->()
RETURN [r in relationships(path) | ID(x)] as relIds