繁体   English   中英

如何使用稀疏属性上的WHERE子句来密码查询neo4j DB

[英]How to cypher query a neo4j DB with WHERE clause on sparse property

我的Neo4j数据库中有一些节点,这些节点具有并非在所有节点上都存在的某些属性,但是我想使用带有WHERE子句的Cypher查询这些属性。

示例数据:

{id:"52", name:"Jim", age:"32", gender:"M"}
{id:"55", name:"Lisa", age:"22", gender:"F"}
{id:"97", name:"Chris", age:"38"}

现在,如果我要对性别运行Cypher查询,它将在Chris记录上给我一个错误,指出该节点上不存在性别属性。

Cypher查询示例:

START n=NODE(*) WHERE n.gender="M" RETURN n;

我收到的特定错误消息是:

EntityNotFoundException: The property 'gender' does not exist on Node[4925]

我正在运行Neo4j的1.9.2版本。 我想升级到2.x并尝试使用标签和大量的auto_indexes。 但是,我还不能离开稳定版本。

用Cypher查询或1.9.2索引功能解决此问题的任何方法?

你可以做:

WHERE n.gender! = "M"

要么

WHERE has(n.gender) AND n.gender = "M"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM