我想使用相当复杂的公式对我的solr查询进行排序。我想我可以通过在查询的sort参数中设置正确的函数来使它工作,但我想通过查看每个文档的函数的显式值来检查我的工作。
我想通过将计算值作为结果中的字段包含在内,然后只对该字段进行排序。这是正确的方法,如果是这样,我怎么能这样做,还是有另一种方法?我已经尝试启用debugquery,但我认为它只解释了相关性得分,而不是用于对结果进行排序的值。
在管理信息中心,我的solr-spec和lucene-spec都是4.5.0
答案 0 :(得分:2)
您可以使用LocalParams语法,即{!func}
或设置defType=func
。 (您可能不想使用_val_
挂钩,因为您的函数值将成为乐谱中的一个组件。)乐谱是函数的值,因此您的结果会自动按函数值排序。使用fl=*,score
获取分数。