gpt4 book ai didi

neo4j - 排除具有重复节点的路径

转载 作者:行者123 更新时间:2023-12-04 17:51:18 28 4
gpt4 key购买 nike

在我的飞行模型中,我想搜索具有 1 个停靠点的路径,这在图中等效于具有从源到目的地的 4 跳关系。搜索路径时:

     match (s:Airport{airportName:'CAN'}),
(d:Airport{airportName:'ICN'})
with s,d
match p = (s)<-[*4]->(d)
return nodes(p), relationships(p)

但这也为我提供了两次访问机场节点的路径,如下所示:airport node

所以我的问题是,如何排除包含重复节点的路径?如何检测路径中是否存在重复节点?

谢谢!

最佳答案

如果您有权访问 APOC Procedures ,您可以尝试使用 apoc.algo.allSimplePaths(),它不会包含任何返回路径中先前访问过的节点的循环。

 match (s:Airport{airportName:'CAN'}),
(d:Airport{airportName:'ICN'})
call apoc.algo.allSimplePaths(s, d, '', 4) yield path
return nodes(path), relationships(path)

关于neo4j - 排除具有重复节点的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44539664/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com