我的要求是这样的:
{
"from":0,
"query":{
"bool":{
"must":[
{"term":{
"type_id":{
"value" : 34
}
}}
]
}
},
"size":20
}
术语
{
"from":0,
"query":{
"bool":{
"must":[
{"terms":{"type_id":[34]}}
]
}
},
"size":20
}
此索引中有67个文档term
查询返回得分为0.0149每个文档
但是terms
查询返回分数是1.0term
评分似乎为1/67
我在索引中添加了另一个type_id 35,2016文档后term
得分为3.4299169terms
评分仍为1.0
我希望条件和条件执行相同。
想知道它是如何工作的吗?
谢谢
1条答案
按热度按时间6kkfgxo01#
此link包含更多讨论
术语查询不会根据匹配术语的IDF(稀有性)对匹配项进行评分,而术语查询会。
如果您将使用?explain=true运行这两个查询。您将看到terms查询基于计算得分,而terms应用constantScore
术语查询
结果
条款查询
结果