Ответ 1
Lucene (до версии 2.9 в любом случае) сохраняет только значения String и поддерживает только лексикографические запросы диапазона по этим данным. Поэтому, если вы хотите хранить данные даты и времени и выполнять запросы диапазона на нем, вам необходимо явно форматировать ваши данные/значения времени таким образом, чтобы сделать их лексикографически упорядоченными.
Например, сохраните дату/время как что-то вроде 2009-10-29T15:34:00
, а затем выполните запросы диапазона, такие как [2009-10-29T15:00:00 TO 2009-10-29T16:00:00]
Как уже упоминалось в другом месте, Lucene 2.9, наконец, ввел поддержку запросов диапазона для нестроковых данных, что упростило это.