【发布时间】:2014-02-26 11:42:09
【问题描述】:
我有两个按预期运行的密码查询。我的图表仅由通过关系连接的企业组成。
# Finding the shortest path that exists between two given business nodes
START a=node:Businesses('id: xxx'), b=node:Businesses('id: yyy')
MATCH a, b, p= shortestPath((a)-[*..15]-(b))
RETURN p
# Find all nodes connected 1-step out from a given business node
START a=node:Businesses('id: xxx')
MATCH (a)-[r:isRelated*]->(d)
RETURN distinct d,r
我现在想将这两个查询的各个方面合并为一个。我想找到任何两个给定节点之间的最短路径,并从返回的路径中的节点走出 1 步。我尝试了下面的查询,它不起作用,因为 p 正在返回一个路径,而我的第二个匹配语句需要一个节点。
START a=node:Businesses('id: xxx'), b=node:Businesses('id: yyy')
MATCH a, b, p= allShortestPaths((a)-[*..15]-(b))
WITH p
MATCH (p)-[r:isRelated*1]->(d)
RETURN distinct p,d,r
我应该如何编写这种类型的查询?
【问题讨论】: