gpt4 book ai didi

Neo4j 密码 - 搜索节点之间没有路径

转载 作者:行者123 更新时间:2023-12-01 10:31:49 30 4
gpt4 key购买 nike

我正在尝试寻找一种通用方法来搜索没有链接到另一个节点或节点集的节点或节点集。例如,我能够找到特定类型(例如 :Style)的所有节点,这些节点以某种方式连接到一组特定的节点(例如 :MetadataRoot),具有以下内容:

match (root:MetadataRoot),
(n:Style),
p=shortestPath((root)-[*]-(n))
return p

使用它,我能够从上述查询返回的节点中减去 all :Style 节点集,但这似乎不是最好的解决这个问题的方法。

最佳答案

如果您知道起始节点的标签,您可以使用 EXISTS 函数:

MATCH (n:Style)
WHERE NOT EXISTS((n)-[]-())
RETURN n

如果你知道结束节点:

MATCH (n:Style)
WHERE NOT EXISTS ((n)-[*]-(:MetadataRoot))
RETURN n

编辑:

不确定,但关于您评论中的性能问题,解决方法可能是这样的:

MATCH p=allShortestPaths((n:Style)-[*]-(:MetadataRoot))
WITH nodes(p) as nodesRelated
MATCH (s:Style) WHERE NOT s IN nodesRelated

关于Neo4j 密码 - 搜索节点之间没有路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27778120/

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