NEO4J / Cypher:如果集合仅具有错误结果,则创建节点

时间:2019-06-20 14:13:40

标签: neo4j cypher

我有一个基于验证查询为true或false的COLLECT,如果集合中的每个结果均为false,我想创建一个一个节点。如何为此特定结果过滤收藏集?

WITH COLLECT(DISTINCT(...))

[true] =没事

[false,true] =什么都没发生

[false] =创建新节点

1 个答案:

答案 0 :(得分:2)

您可以使用all()none()列表谓词,这将允许您测试列表的每个元素并返回适当的布尔值。

WITH COLLECT(DISTINCT(...)) as testList
WHERE all(val in testList WHERE val = false)
CREATE ...

请记住,这将为空列表返回true,因此您可能需要添加其他谓词:AND size(testList) > 0