Graph 如何获得某一关系类型上的图中的所有节点
我已经建立了一个小图表,其中所有屏幕都连接在一起,屏幕的流量根据系统/用户的不同而变化。因此,系统/用户是关系类型 我希望从开始屏幕中获取与特定关系链接的所有节点。我不关心深度,因为我不知道图形的深度。 类似于这样,但是下面的查询需要花费很长时间才能获得结果,并且返回的连接不匹配属性{path:'CC'} 匹配(n:screen{isStart:true})-[r:NEXT*0..{path:'CC'}]-() 返回r,n一些建议:Graph 如何获得某一关系类型上的图中的所有节点,graph,neo4j,iteration,cypher,nodes,Graph,Neo4j,Iteration,Cypher,Nodes,我已经建立了一个小图表,其中所有屏幕都连接在一起,屏幕的流量根据系统/用户的不同而变化。因此,系统/用户是关系类型 我希望从开始屏幕中获取与特定关系链接的所有节点。我不关心深度,因为我不知道图形的深度。 类似于这样,但是下面的查询需要花费很长时间才能获得结果,并且返回的连接不匹配属性{path:'CC'} 匹配(n:screen{isStart:true})-[r:NEXT*0..{path:'CC'}]-() 返回r,n一些建议: 确保已为:屏幕(isStart)创建索引: 确实要包括0长度
:屏幕(isStart)
创建索引:
0..
WHERE
子句,以确保当前路径不能进一步扩展CREATE INDEX ON :screen(isStart);
MATCH (n:screen {isStart:true})-[r:NEXT* {path:'CC'}]->(x)
WHERE NOT (x)-[:NEXT {path:'CC'}]->()
return r,n;