获取neo4j中最近的节点

时间:2016-01-31 13:26:48

标签: neo4j

我有5个节点Node1,Node2,Node3,Node4,Node5。我想从Node5的类型获得最接近Node1的节点,它可以是Node1-> Node2-> Node5或Node1-> Node3-> Node-> Node5。 那可能吗?

2 个答案:

答案 0 :(得分:2)

所以你想找到从Node1到Node5的最短路径? Node1node label是否标识了许多节点或标识单个节点的属性值?

假设您有一个标识节点的name属性:

MATCH p=shortestPath( (:Node {name: "Node1"})-[*]->(:Node {name: "Node2"}))
RETURN p

如果Node1Node2等是标签:

MATCH p=shortestPath((n1:Node1)-[*]->(n5:Node5))
RETURN p

答案 1 :(得分:1)

Match p = shortestPath((n1:Node1)-[*]-(n5:Node5)) return p 有关此问题的其他提示,请参阅此文档: http://neo4j.com/docs/milestone/query-match.html

另一方面,您似乎使用的是一种略微弃用的cypher语法Start,建议仅使用旧版索引。在较新的版本中,您可以直接使用Match。请参阅以下内容:http://neo4j.com/docs/stable/query-start.html