在 NEO4J Path 中查找未连接的节点

Finding a node that is not connected in NEO4J Path

我是 Neo4J 的新人

我在下面写了一个查询。我正在尝试向下遍历路径,如下所示,并识别未附加到度量节点的任何控制节点。我不讲究横向,只讲connection

MATCH path=(a:Area{Country:"France"})-[b:Scenario]-(c:Threat)-[d:Control]-(e:Control)-[f:Metric]-(g:Metric) WHERE NOT (e)-[f:MetricControl]--(g)
WITH path
MATCH (e) WHERE NOT e IN nodes(path)
RETURN e

但是,我不断收到以下错误。

Type mismatch: expected Node but was Relationship (line 2, column 16 (offset: 212))
"WHERE NOT (g)-[f:MetricControl]--(e)"

我期待所有控制节点的列表,这些控制节点是具有 属性 国家/地区:“法国”但未连接到要列出的任何度量节点的区域节点的一部分。

任何帮助提示将不胜感激。

我想你的意思是不存在。语法如下:

https://neo4j.com/docs/cypher-manual/current/functions/predicate/#functions-exists

在你的例子中;应该是

WHERE NOT EXISTS((e)-[:MetricControl]-(g))

请注意,您不需要输入关键字 MATCH