我目前正在使用这个 Cypher 查询来查找两个节点之间的最短路径:
START topic=node:cities(name='amsterdam'), top=node:categories(name='world')
MATCH p=shortestPath(topic-[*]->top)
RETURN p
但是,我需要路径中的节点具有特定的属性,或者更好的是,在索引类别中。我怎样才能做到这一点?
谢谢
我目前正在使用这个 Cypher 查询来查找两个节点之间的最短路径:
START topic=node:cities(name='amsterdam'), top=node:categories(name='world')
MATCH p=shortestPath(topic-[*]->top)
RETURN p
但是,我需要路径中的节点具有特定的属性,或者更好的是,在索引类别中。我怎样才能做到这一点?
谢谢
那是更复杂的东西,您可能应该在https://github.com/neo4j/neo4j/tree/master/community/graph-algo/src/main/java/org查看遍历框架和 ShortestPath 的实现/neo4j/graphalgo/impl/shortestpath
可能是这样的
START topic=node:cities(name='amsterdam'), top=node:categories(name='world')
MATCH p=shortestPath(topic-[r]->top)
WHERE HAS(r.PROPERTY)
RETURN p
其中 PROPERTY 是您要指定用于限制输出的任何属性