Как отсортировать (и дать вес) по датам доступности в SolR - PullRequest
0 голосов
/ 24 сентября 2019

Я столкнулся с большой проблемой в моей базе данных SolR.Мои объекты имеют поле datetime «Available_From» и поле datetime «Available_To».У нас также есть поле «Рейтинг» для сортировки.Я могу правильно искать с прямыми запросами (например, дать мне все элементы, которые доступны на данный момент), но когда я делаю регулярный поиск, я не могу найти способ показать элементы, которые приводят к «доступным СЕЙЧАС» в первых местах врезультаты, как правило, сортируются по полю «Рейтинг».Как я могу это сделать?Я вынужден написать несколько классов Java (самое близкое, что я нашел, это https://medium.com/@devchaitu18/sorting-based-on-a-custom-function-in-solr-c94ddae99a12) или есть ли способ сделать со стандартными запросами SolR? Спасибо всем заранее!

1 Ответ

0 голосов
/ 24 сентября 2019

В вашем случае вы на самом деле не хотите сортировать, поскольку это означает, что вы хотите, чтобы одно поле определяло возвращаемую последовательность документов.

Вместо этого используйте повышение - примените очень большое усиление к тем, которыедоступно через bq или boost, затем примените повышение на основе рейтинга.Вам нужно настроить веса, заданные для каждой части, в зависимости от того, как вы хотите, чтобы результаты поиска были представлены.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...