ELK,萌萌哒

function_score最终得分,每个文档都会有1分

Elasticsearch | 作者 code4j | 发布于2018年07月17日 | 阅读数:3218

最近了解了下function score,按照官方的描述实践了一下,例如那个weight function,他是可以让调用方指定权重计算符合条件的加权,最后合并到总分,
 
可是发现一个现象,假设你设置weight为n 分,结果中filter命中的文档会得到n分,但是没有命中的也会得到1分,这个不科学呀,我也没有用constantscore, 而且我使用了filter作为查询条件,也是会有1分,原本应该是0分的(boost_mode为sum也应该最终得到0分才对)。
 
所以不明白是不是只要我使用了function score 查询了,我的文档就会保底得到1分?
已邀请:

kennywu76 - Wood

赞同来自:

所有match的文档默认得分都是一样的,也就是1,然后weight function就是在这些相等的得分基础上去提升某些文档的权重。

hanxiaobei - 90后小白

赞同来自:

您好 这个有解决吗?

要回复问题请先登录注册