身安不如心安,屋宽不如心宽 。

match_phrase_prefix出现无法命中的情况,谁可以帮忙解答一下?

Elasticsearch | 作者 ljy | 发布于2018年11月19日 | 阅读数:3070

5个文档,每个文档有2个字段,name和pages_content,使用自定义评分function_score,filter条件中使用match_phrase_prefix进行前缀匹配,将每个filter条件所得评分加起来是最终的评分结果,但是结果中,关键字出现在pages_content中,但是评分没有加上,也就是说没有匹配上。
1、function_score评分的具体代码,权重的设置:
屏幕快照_2018-11-19_11.53_.54_.png

2、搜索关键词'the b'搜索返回的结果如下:
屏幕快照_2018-11-19_11.55_.55_.png

3、结果中_source为20,应该是25才是正确的
4、具体mapping设置如下:

屏幕快照_2018-11-19_11.58_.26_.png

 
5、谁可以帮忙看一下这个问题的原因?感谢
已邀请:

zz_hello

赞同来自:

你的pages_content是keyword类型的,是当做一个整体来查询的,你用match_phrase_prefix并不能匹配到该字段

要回复问题请先登录注册