2016-11-19 35 views
0

我想這個簡單的查詢:Elasticsearch得分

{ 
"query":{ 
"range":{"ncopies":{gte:2, lte:5}} 
} 
} 

和每個文檔返回了得分的1

然後我嘗試:

{ 
"query":{ 
"term":{"ncopies":2} 
} 
} 

和每個文檔返回有一個分數1.52

在「term」和「range」計算得分的方式上有差異嗎?

+0

可能的重複[ElasticSearch分數的分母是什麼?](http://stackoverflow.com/questions/21346164/whats-the-denominator-for-elasticsearch-scores)「這個分數在特定查詢之外是沒有意義的。唯一的目的是在單個查詢「 – Thilo

回答

0

範圍查詢相匹配的文檔與特定range.If ncopies是3內有術語字段,它NCOPIES> = 2個& NCOPIES匹配< = 5,它不分析,只是比較一個field.The值的值Doc1的ncopies爲4,Doc2的ncopies爲3,兩者匹配,它們的得分相同爲1.

術語查詢將使用分析器來評分。

+0

」的上下文中比較一個文檔與另一個文檔,我認爲'term'沒有分析,而'match'沒有。 – sudeepdino008