2012-04-30 2 views
2

Я пытаюсь понять, почему Солр думает, что документ в прошлом. Мой запрос настроен на использованиеКак работает ТЕПЕРЬ/ДЕНЬ в запросе Solr?

published:[* TO NOW/DAY]

Док Я надеюсь, он найдет имеет опубликованную дату

2012-04-30T04:00:00Z 

Текущее время сервера Solr Пн 30 апреля 18:26:47 EDT 2012. Мое понимание гласит, что документ должен был быть найден к настоящему времени, что заставляет меня думать, что СЕЙЧАС/ДЕНЬ не работает так, как я думаю. Кто-нибудь знает, как NOW/DAY оценивает даты и почему, когда Solr не находит мой документ, когда я добавляю это условие?

ответ

5

NOW/DAY означает время фактической даты и округления его до дня (без учета времени). Конечно, если фактическая дата 2012-04-30, в любой час, результат 2012-04-30T00:00:00Z.

+0

Спасибо, что имеет смысл. Мы сделали это, переключив правило на «СЕЙЧАС/ДЕНЬ + 1», чтобы убедиться, что мы поймаем что-либо, опубликованное в указанный день. – harmstyler

+1

Вот полезная ссылка: http: // searchhub.орг/2012/02/23/дата-математика-теперь и фильтрующие-запросы / – arun

0

Попробуйте использовать только СЕЙЧАС. Я подозреваю, что NOW/DAY равен 2012-04-30T00: 00: 00Z.

0

NOW/DAY раундов до полуночи прошлой ночью. Если вы хотите, чтобы полночь текущего дня изменилась с NOW+1DAY/DAY.

Дата Math Синтаксис

Дата математических выражений состоят либо добавив некоторые количество времени в указанном блоке, или закругление текущее время указанный блок. выражения могут быть закодированы и оцениваются влево до справа.

Например: это представляет собой момент времени, через два месяца Сейчас:

NOW + 2months

Это один день назад:

NOW-1DAY

Косая является используется для обозначения округления. Это означает начало текущего часа:

NOW/ЧАС

Следующий пример вычисляет (с точностью до миллисекунды) момент времени шесть месяцев и три дня в будущее, а затем раундов, что время до начало этого дня:

NOW + 6Months + 3Days/дЕНЬ

Обратите внимание, что в то время как дата математике чаще всего используется по отношению к NOW может быть применен к любой фиксированный момент времени, а также:

1972-05-20T17: 33: 18.772Z + 6Months + 3Days/ДЕНЬ

Цитируется Apache Solr Reference Guide - Working with Dates