2013-05-03 2 views
2

Использование Lucene 4.2.1 API, мне нужен эквивалентLucene: Как запрограммировать запрос диапазона дат?

+ имя_поля: [2013-01-17T00: 00: 00Z К *]

построен программно.

Я заглянул в TermRangeQuery и NumericRangeQuery, но не смог найти быстрое решение.

+0

Возможный дубликат [Lucene Query on DateField, проиндексированный Solr] (http://stackoverflow.com/questions/12953510/lucene-query-on-a-datefield-indexed-by-solr) – mindas

+0

Я не см. прямой ответ, хотя он приближает меня. Разве не один линер, который можно извлечь, и сэкономить время для меня и других, которые хотят это сделать? –

+0

Думаю, вам нужно перечитать ответ на этот вопрос. Там явно есть решение. – mindas

ответ

2

Этот запрос ничем не отличается от запроса диапазона, единственное отличие состоит в том, что он ожидает получить дату, отформатированную в Solr format.

Вы можете использовать Solr's TrieDateField.getRangeQuery, чтобы построить этот запрос. Подсказка: QParser параметр игнорируется, поэтому вы можете просто пропустить его.

Смежные вопросы