我需要根据两个因素对从 apache solr 返回的结果进行排序:
我们的系统中有三个实体由 solr(组、项目和数据集)索引,在结果中我希望首先显示数据集,然后是项目,然后是组;但我仍然希望它尊重每种类型的分值。
因此,例如:结果将是
- 得分为 0.325 的数据集
- 得分为 0.282 的数据集
- 得分为 0.200 的数据集
- 得分为 0.298 的项目
- 得分为 0.186 的项目
- 得分为 0.360 的组
- 得分为 0.270 的组
我在java中这样做并使用solrj来构造 solr 查询。问题是当我尝试向 SolrQuery 对象添加 2 个排序字段时,它似乎只使用其中一个。同样在 solr 文档中没有任何说明实体类型的内容,但文档的 ID 以实体名称为前缀,所以我打算使用它。
如果有人对我如何实现这一目标有任何想法,我将不胜感激,因为我已经坚持了一段时间了!
在此先感谢,-杰克。