不要急,总有办法的

elasticsearch sort奇怪问题

Elasticsearch | 作者 redhat | 发布于2017年06月02日 | 阅读数:4970

当我只是使用bool查询的时候,返回的结果中"max_score":是有值的,当我在bool查询后面加上了sort,返回的结果中"max_score"的值为null。请问这是什么原因
已邀请:

novia - 1&0

赞同来自: redhat

如果不用相关性排序的话,好像没有max_score和_score吧,计算这两个值会消耗性能。
 
如果想强制让他出现,增加:track_scores=true
 
或者用相关性排序:
 "sort": [
{
"_score": {
"order": "desc"
}
}
]

redhat

赞同来自:

找到答案了,[/url]
_score 和 max_score 字段都是 null 。 计算 _score 的花销巨大,通常仅用于排序;如果 并不根据相关性排序,所以记录 _score 是没有意义的。如果无论如何你都要计算 _score , 可以将track_scores 参数设置为 true 。

要回复问题请先登录注册