Могу ли я изменить последовательность сортировки поиска SOLR во время запроса? Заставить SOLR использовать 52734 вместо 12345?

У меня есть документы в индексе, которые имеют атрибут категории.

Для каждой категории назначены приоритеты, например:

Category | Priority
    1    |     1
    2    |     2
    3    |     3
    4    |     4

Я хотел бы иметь возможность изменить способ сортировки SOLR по атрибуту категории во время запроса, чтобы я мог решить, что категория 4 должна быть приоритетом 1, без необходимости переиндексации всех документов.

Например, что-то вроде этого:

order by category asc, with ordering of "4123"

Затем, если документ имеет категорию 4, он будет предшествовать документу с категорией 1.

Возможно ли это в SOLR?

Кроме того, я использую этот приоритет для упорядочивания групп документов, а не для общей сортировки.

1 ответ

Вы можете добиться этого в следующем порядке, используя функцию map, см. здесь, хотя функция может быть немного длинной и трудной для понимания.

Другие вопросы по тегам