在Neo4j 2.x中,很容易使用Cypher 2.0为给定属性查找具有特定值的所有节点,如下所示:
MATCH (node {property: 'value'})
RETURN node;
Run Code Online (Sandbox Code Playgroud)
但是,我将如何查找property除以外的任何值的所有节点"value"?我试过NOT像这样使用运算符,但这只会返回语法错误:
MATCH (node {property: NOT 'value'})
RETURN node;
Run Code Online (Sandbox Code Playgroud)
MATCH子句中属性的简洁语法仅适用于完全匹配。
如果要执行任何其他类型的匹配条件,则应使用WHERE子句:
MATCH (node)
WHERE node.property <> 'value'
RETURN node;
Run Code Online (Sandbox Code Playgroud)
另一个例子:
MATCH (node)
WHERE NOT node.property IN ["red", "blue", "yellow"]
RETURN node;
Run Code Online (Sandbox Code Playgroud)
请注意,强烈建议您进行整个图形扫描。在任何合理的数据集大小上,此查询可能不会完成或至少没有及时完成。
| 归档时间: |
|
| 查看次数: |
3569 次 |
| 最近记录: |