запрос solr с ruby ​​- нужно сравнить дату и время - PullRequest
0 голосов
/ 11 июня 2009

Моя база данных Lucene / Solr содержит столбец даты (созданный_кат), который мне нужно использовать в качестве условия в запросе.

Я новичок в RoR и предполагаю, что RoR автоматически использует свой собственный объект даты в anyObject.save, и что Solr, в свою очередь, по-своему переиндексирует этот столбец.

Независимо от того, дата в следующем формате: «2008-06-03 11:15:20»

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

Object.find (ключевое слово: foo creation_at> = '2008-06-03 11:15:20')

Solr выдает ошибку разбора. Я попробовал несколько стандартных вариантов этого без успеха. Есть предложения?

1 Ответ

2 голосов
/ 15 июня 2009

Ненавижу спрашивать об очевидном, но вы проверили в solr docs язык запросов для дат?

http://wiki.apache.org/solr/SolrQuerySyntax

и опыт подсказывает, что "> =" не является допустимым оператором solr. Вы можете выполнять интервальные запросы к полям даты, но при использовании правильного формата с вашим примером запроса будет:

Object.find("keyword:foo AND created_at:[2008-06-03T11:15:20.000Z TO *]")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...