对于图中的某种类型的节点,属性(名为"some_count")的属性值要么缺失,要么是整数,要么是浮点数。我正在尝试编写 gremlin 以根据此属性的最小值过滤这些节点。
我首先通过发射以下 gremlin 来验证这些值确实存在
g.v(XXX)._().in('category').hasNot('some_count', T.eq, null).back(1).some_count
下一个
我尝试按确切值过滤,这可以工作并向我显示匹配的节点,或者如果没有匹配项,则给出一个空数组
g.v(XXX)._().in('category').hasNot('some_count', T.eq, null).back(1).has('some_count', T.eq, 120000.0d)
但是,以下使用"大于或等于"比较器的查询不起作用。
g.v(XXX)._().in('category').hasNot('some_count', T.eq, null).back(1).has('some_count', T.gte, 1.0d)
返回 nil(我正在使用 Neo4j AR 适配器通过 ruby/rails 进行查询)
它不是返回一个不匹配的空数组,而是返回一个 nil,这告诉我查询本身可能有问题。我正在运行neo4j社区服务器1.8。
有没有办法让我要求 Neo4j 记录错误/查询,看看可能出了什么问题?
将令牌添加到您的 T.gte。
g.v(XXX)._().in('category').hasNot('some_count', Tokens.T.eq, null)
.back(1).has('some_count', Tokens.T.gte, 1.0d)