Показать все результаты в текстовом запросе solr - PullRequest
0 голосов
/ 21 сентября 2018

У меня есть следующий простой запрос в solr, в котором я хочу определить все записи, основываясь на их названии, сходном с текстом («Olive Tasting Room»):

query: name: «Olive Tasting Room»"

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

как мне это сделать в sorl / lucene?

1 Ответ

0 голосов
/ 21 сентября 2018

Когда вы используете синтаксис `field:" Term Term2 ", вы выполняете поиск по фразе, то есть ожидаете, что термины будут следовать друг за другом.

Лучший способ обработать больше"Естественные "запросы - это использование парсера запросов edismax.Вы делаете это, используя defType=edismax в URL.После изменения на edismax, вы можете ввести сам запрос в q - q=Olive Tasting Room (экранируйте его правильно, если вы вводите его непосредственно в URL), и qf=name (qf - это сокращение от «поля запроса», которое обозначает поляОбработчик edismax должен выполнить запрос).

Вы также можете использовать параметр pf3=text, чтобы повысить любой документ, содержащий три слова из вашего запроса друг за другом (и pf2 только для двух) в тексте..

...