Как убрать слово из запроса, которое нигде не встречается?

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

Я не понял вопрос. Зачем его убирать? На каком уровне? Вы не могли бы более подробно описать, что вы пытаетесь достичь.

Есть магазин одежды, у него товар :
леггинсы зеленые на высокой талии зауженные diesel
и рассмотрим два запроса
1.джеггинсы зеленые на высокой талии зауженные diesel
но нет :
2.джеггинсы зеленые с паетками на высокой талии зауженные diesel

карточка товара имеет мапинг, поля по которым поиск идет с разными весами, но например "на высокой талии" в доп свойствах нет, а есть только в названии

значит поиск найдет товар по полю "название", а при запросе 2 уже нет, потому что это fuzzy query с operator "and"

Может лучше тогда не fuzzy с and, а or c minimum_should_match?

А опция указать не линейную зависимость количества слов которые могут не совпасть, от слов в длине запроса, вам видится полезной? Или есть что-то , что даст похожий эффект?

То есть, если мне нужен скачок: начиная с запроса длиною в 4 слова и более, я хочу чтобы учитывались обязательно только "50%" слов , а меньше 4 minimum_should_match = "-1"

Да, посмотрите в документации.

1 Like

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.