我试图通过在Solrconfig文件中更改以下内容,在Solr中对类型为ABC的ABC和类型为XYZ的两个不同字段进行排序:
<requestHandler name="/select" class="solr.SearchHandler">
<lst name="invariants">
<str name="sort">ABC desc</str>
<str name="sort">XYZ desc</str>
</lst>
我希望按照ABC字段进行排序,但是如果任何记录具有与XYZ字段排序相同的日期。根据我的代码,我只按照ABC字段获得结果。
答案 0 :(得分:1)
在Solr's reference documentation and there the part about sorting中,您可以阅读
可以使用以下语法用逗号分隔多个排序顺序:sort = +,+],...
- 如果提供了多个排序条件,则只有在第一个条目产生平局时才会使用第二个条目。如果存在第三个条目,则仅在第一个和第二个条目绑定时使用。此模式继续进一步输入。
但是你已经为该字段传递了两个单独的参数,所以尝试按照描述进行操作并用逗号分隔它们
<requestHandler name="/select" class="solr.SearchHandler">
<lst name="invariants">
<str name="sort">ABC desc,XYZ desc</str>
</lst>