我当前正在使用载脂蛋白 库以成本(长度)获得最短路径
apoc.algo.aStar(
startNode, endNode, 'KNOWS|<WORKS_WITH|IS_MANAGER_OF>',
'distance','lat','lon'
) YIELD path, weight
我需要两件事:
我将如何使它返回所有可能的路径而不仅仅是一个?
我如何只搜索例如PropertyA:true,PropertyB:false,PropertyC包含“ abc”等的egdes ??
答案不一定非要使用apoc,而请使用CYPHER或C#。 谢谢
答案 0 :(得分:1)
在回答第一个问题时,您可以使用allShortestPaths
函数。对于第二个问题,您可以设置WHERE CONDITION
或您的关系。
这是我对示例数据库的尝试:
MATCH path=allShortestPaths((:User)-[:MEMBER_OF_GROUP*1..3]-(:Group)) WHERE ALL(x in relationships(path) WHERE x.last_seen > 1534326850) RETURN path
您需要在allShortestPaths
中添加路径,并且要在边上进行搜索,请在WHERE CONDITION
中检查路径关系