我能够移植我的Neo4j 3.4.0应用程序以使用手动索引和APOC过程而不是查询索引关系属性。除了最后一件事之外,一切都像魅力一样 - 我遇到了非字符串Lucene范围查询的问题。
他们没有按预期工作Lucene query language and numeric range
例如:
我应用以下Lucene查询谓词,以获取2 to 6
范围内的所有包含数字:
value:[2 TO 6]
并接收包含以下值的文件:
567986400000
567986400000
567986400000
536450400000
536450400000
599608800000
536450400000
567986400000
这显然不是预期的事情。
Neo4j / APOC中有什么可以让它正常工作吗?
答案 0 :(得分:1)
如果您阅读了文档,则说
'按字典顺序排序'
请参阅'范围查询'下: https://lucene.apache.org/core/6_4_1/queryparser/org/apache/lucene/queryparser/classic/package-summary.html
您应该将数据编入索引,例如DoubleDocValuesField
而不是StringField
/ TextField
,并使用适当的Lucene查询,例如PointRangeQuery