我正在使用带有分面过滤器的 SOLR 6.5.1。
我的查询有:
facet.limit=-1 --> 生成所有可能的构面值
facet.sort=index --> 不按出现次数而是按值本身对分面值进行排序
例如,一个方面将整数作为值(特别是字段包含年份)。所以这些值是(出现在括号中):
2010 (438)
2011 (547)
...
2017 (367)
该构面按值正确排序,但采用升序 (2010-->2017)。如何获得相反的顺序(2017-->2010)?
Thanks
UMG
您将无法使用简单的 Facet API(直接在 URL 中使用的旧 API)指定排序方向。但由于您正在检索所有可能的方面,因此您可以在输出值之前反转客户端控制器中的方向。具体如何操作取决于您使用的语言。
但如果你切换到更现代的基于 JSON 的 Facet API https://cwiki.apache.org/confluence/display/solr/Faceted+Search,您可以直接在构面的每个级别上指定排序顺序:
"sort":"index desc"
指定如何对生成的桶进行排序。 “count”指定文档计数,“index”按存储桶值的索引(自然)顺序排序。人们还可以按存储桶中出现的任何方面函数/统计数据进行排序。默认为“count desc”。该参数也可以在 JSON 中指定,例如 sort:{count:desc}。排序顺序可以是“asc”或“desc”
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)