2015-09-16 5 views
0

Возможно ли использовать один из заданных запросов в операторе OR, если первый запрос не возвращает результат?Решение запроса Solr на основе OR

Учитывая следующий Solr запрос: name:Mi OR name:Mi*

Если левый запрос не возвращает никаких документов, попробуйте правую сторону OR заявления.

Я экспериментировал с qf без каких-либо хороших результатов.

ответ

0

Что вы ожидаете от OR? Оператор: Условное поведение. Операторы (OR и AND), определенные в Solr, предназначены для выполнения соединений и . Пересечение результатов соответственно. Вы не можете выполнить условное поведение.

Solr Boolean Operators

+0

спасибо. Я подумал, что Солр что-то сказал. Надеюсь, в ближайшем будущем они добавят более интеллектуальные функции поиска, подобные этому. – SamTheGoodOne

0

Solr (Lucene на самом деле) работает с точки зрения ОБЯЗАТЕЛЬНО должны и не должны положения. Итак, то, что вы просите, не существует напрямую.

Однако вы можете сделать что-то похожее ваши результаты соответствующим образом. Таким образом, у вас будет свое исходное поле значений и увеличьте его, а затем ваша копия значений в поле say - edgengram, чтобы сделать суффиксные совпадения и значительно увеличить его. Любые результаты, которые идеально подходят, будут всплывать вверх.

+0

Спасибо, господин Александр, я изучу рейтинг больше. Я также экспериментирую с токенами и как результат (ы) отображаются. Мне очень нравится Солр. – SamTheGoodOne

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