【发布时间】:2018-08-24 16:38:46
【问题描述】:
有没有办法实现以下-
我们在每个文档中都有一个 RANK 字段,基本上,我希望我的分数受到这个 RANK 的影响,如下所示 -
score = (score * 0.1) + RANK
如何通过函数查询或其他机制实现这一点
Solr 版本 # 7.4.0
谢谢!
【问题讨论】:
有没有办法实现以下-
我们在每个文档中都有一个 RANK 字段,基本上,我希望我的分数受到这个 RANK 的影响,如下所示 -
score = (score * 0.1) + RANK
如何通过函数查询或其他机制实现这一点
Solr 版本 # 7.4.0
谢谢!
【问题讨论】:
bf(提升函数)和bq 函数都是相加的,这意味着它们的结果会添加到现有分数中。
因此,不要将分数乘以 0.1,而是将受欢迎程度乘以 10(实际上是给您相同的排名):
bf=product(RANK,10)
(mul 是product 的别名)
【讨论】:
score = score * 0.1 + RANK = 5 * 0.1 + 10 = 10.5 上面的操作将执行以下操作 - score = score + RANK * 10 = 5 + 100 = 105 我错过了什么吗?