Как выполнить вложенную сортировку в запросе solr? - PullRequest
0 голосов
/ 20 июня 2019

Предположим, у меня есть поле и значение типа

Field : value
sku : xxx
Seller : true
Name : "Elux"

запрос будет выглядеть как

sku:"xxx"

в рамках этого результата мне нужно отсортировать товары с именем (Elux) вверху с продавцом (true) вверху и в пределах того, что мне нужно, название продукта должно быть отсортировано в алфавитном порядке, то же самое относится и к продавцу (ложь) и к имени, отличному от Elux, внизу. Возможно ли это с помощью solr?

1 Ответ

1 голос
/ 20 июня 2019

Вы можете использовать ту же стратегию, что и , показанную в этом ответе Александром , но вам придется адаптировать ее к вашим потребностям.Что-то вроде:

&sort=query(Name:Elux, 0) desc, query(seller:true, 0) desc, Name asc

.. должно работать.Не уверен насчет производительности этих двух query вызовов.

Обновление:

Вам придется использовать заполнители, как Александр описывает в своем ответе:

sort=query($manu_sort,0) desc, query($seller_sort,0) desc, ManufacturerName asc
&manu_sort=ManufacturerName:Champ
&seller_sort=BestSeller:true
...