如何在solr查询中进行嵌套排序?
How to nested sort in solr query?
假设我有像
这样的字段和值
Field : value
sku : xxx
Seller : true
Name : "Elux"
查询会像
sku:"xxx"
在此结果中,我需要将名称为 (Elux) 的产品排在顶部,卖家 (true) 排在顶部
其中我需要的产品名称应按字母顺序排序,卖家(错误)和底部的 Elux 以外的名称也是如此。这对 solr 可行吗?
您可以使用与 shown in this answer by Alexandre 相同的策略,但您必须根据需要对其进行调整。类似于:
&sort=query(Name:Elux, 0) desc, query(seller:true, 0) desc, Name asc
.. 应该可以。不过,不确定这两个 query
调用的性能。
更新:
您必须使用占位符,正如 Alexandre 在他的回答中所描述的那样:
sort=query($manu_sort,0) desc, query($seller_sort,0) desc, ManufacturerName asc
&manu_sort=ManufacturerName:Champ
&seller_sort=BestSeller:true
假设我有像
这样的字段和值Field : value
sku : xxx
Seller : true
Name : "Elux"
查询会像
sku:"xxx"
在此结果中,我需要将名称为 (Elux) 的产品排在顶部,卖家 (true) 排在顶部 其中我需要的产品名称应按字母顺序排序,卖家(错误)和底部的 Elux 以外的名称也是如此。这对 solr 可行吗?
您可以使用与 shown in this answer by Alexandre 相同的策略,但您必须根据需要对其进行调整。类似于:
&sort=query(Name:Elux, 0) desc, query(seller:true, 0) desc, Name asc
.. 应该可以。不过,不确定这两个 query
调用的性能。
更新:
您必须使用占位符,正如 Alexandre 在他的回答中所描述的那样:
sort=query($manu_sort,0) desc, query($seller_sort,0) desc, ManufacturerName asc
&manu_sort=ManufacturerName:Champ
&seller_sort=BestSeller:true