我有一个Lucene索引,其中每个文档都有几个包含数值的字段.现在我想在这个字段的加权和上对搜索结果进行排序.例如:
field1=100
field2=002
field3=014
Run Code Online (Sandbox Code Playgroud)
加权函数看起来像:
f(d) = field1 * 0.5 + field2 * 1.4 + field3 * 1.8
Run Code Online (Sandbox Code Playgroud)
结果应按表示文档的f(d)位置排序d.排序功能应该是非静态的,并且可能因搜索到搜索而不同,因为常量因素受执行搜索的用户的影响.
有谁知道如何解决这个问题,或者想知道如何以另一种方式实现这一目标?