0

我想使用一个相当复杂的公式对我的 solr 查询进行排序。我想我可以通过在查询的排序参数中设置正确的函数来让它工作,但我想通过查看每个文档的函数的显式值来检查我的工作。

我想通过将计算值作为一个字段包含在结果中来做到这一点,然后只对该字段进行排序。这是正确的方法吗?如果是这样,我该怎么做,还是有另一种方法?我已经尝试启用调试查询,但我认为它只解释了相关性分数,而不是用于对结果进行排序的值。

在管理仪表板中,我的 solr-spec 和 lucene-spec 都是 4.5.0

4

1 回答 1

2

使用函数查询

您可以使用 LocalParams 语法 ie{!func}或 set defType=func。(您可能不想使用_val_钩子,因为您的函数值会成为分数中的一个组成部分。)分数是函数的值,因此您的结果会自动按函数值排序。用 获取分数fl=*,score

于 2013-10-24T16:41:42.387 回答