Apache Lucene -按具体日期搜索

ttygqcqt  于 2022-11-07  发布在  Lucene
关注(0)|答案(3)|浏览(167)

我想找到一个应用程序的一些数据,它允许使用Apache Lucene语法进行搜索查询。我按日期搜索数据,并希望找到具体日期的数据。我该怎么做呢?
查询:

date: [2010-10-4 TO 2010-10-4]

date: 2010-10-4

不起作用。

t9aqgxwy

t9aqgxwy1#

**简短的回答:**Lucene中没有日期查询语法的“标准”。您需要找出您的应用支持的格式。
**详细的回答:**在过去的几年里,Lucene对数字数据进行了特殊的编码。最有可能的是,索引中的日期以时间戳格式保存。这意味着查询解析器需要接受查询,咀嚼它,然后吐出时间戳。根据原始时间戳进行查询并不太实际--至少对人类来说是这样--而且您的查询解析器可能有一些它能够理解的预定义格式。

例如,Solr有一个pre-defined set of supported date/time formats,并且能够将其解析为时间戳。
不要忘记Lucene只是一个库,每个应用程序(包括Solr和您正在使用的应用程序)都是按照自己喜欢的方式使用它的。

2izufjch

2izufjch2#

我找到了解决方案。要按具体日期搜索,请查询:

date: [2010-10-4T00:00:00 TO 2010-10-4T23:59:59]

被校正了

f0ofjuux

f0ofjuux3#

我把日期范围没有连字符和它为我工作。

date: [20210901 TO 20211101 ]

请参阅文档范围搜索

相关问题