0
我必須根據score.how來限制文檔數量,以便在elasticsearch中將變量賦值爲min_score
,我們可以在哪裏實現得分邏輯?如何在elasticsearch中將變量賦值給min_score以及我們可以在哪裏實現得分邏輯?
我必須根據score.how來限制文檔數量,以便在elasticsearch中將變量賦值爲min_score
,我們可以在哪裏實現得分邏輯?如何在elasticsearch中將變量賦值給min_score以及我們可以在哪裏實現得分邏輯?
您可以使用min_score
節點檢索至少指定了最低分數的所有文檔。
下面是JSON語法:
"min_score": 0.5
示例查詢:
GET /_search
{
"min_score": 0.5,
"query" : {
"term" : { "user" : "kimchy" }
}
}
更新
要獲得最高分前80%的文件,第一獲得最大值通過獲取單個最佳結果來進行評分。在查詢下方將返回單個最佳結果。從輸出存儲max_score
值。
GET /_search
{
"query" : {
"term" : { "user" : "kimchy" }
},
"from" : 0,
"size" : 1,
"sort": [
{
"_score": {
"order": "desc"
}
}
]
}
比方說,我們在響應爲306.7351
得到max_score
值。此值可以用作min_score
以僅獲得最佳結果。
GET /_search
{
"min_score": 306.7351,
"query" : {
"term" : { "user" : "kimchy" }
},
"from" : 0,
"size" : 10,
"sort": [
{
"_score": {
"order": "desc"
}
}
]
}
希望這有助於!
是的,但它有一種方法來獲得最大分數來過濾文件? –
您的要求不明確。你想檢索只有最高分數的結果嗎? – Samir
我在索引中有23個文檔。所以我必須在結果中包含得分最高的前80%文件。我們應該怎麼做? –