首页 > 解决方案 > Neo4j 创建有条件的节点

问题描述

在此处输入图像描述

如图所示,A 连接到 B、C、F、G。当我像“Match (n:Label{Name:'Name'})”这样查询 A 时,它会返回 B、C、F、G,这是正确的,但我希望只有在查询“A”时才返回“B” ","D","E",例如 A,D,E 的值是否为真。

这里 D、E 可以连接到其他东西,但只有当 A、D 和 E 的值为真时,才应该给出 B。我能做到吗?

标签: neo4jcyphernodesknowledge-graph

解决方案


我对这个问题的理解如下:

当我要求 A 的邻居时,它应该只返回那些邻居,如果他们自己有其他邻居,都有booleanProp = true

这应该能让你到达那里

MATCH path=(n:Label {name:'A'})-[:MYREL]->(m)

WHERE ALL (k IN [(m)--(l) | l.booleanProp] WHERE k)

RETURN path

推荐阅读