如何在elasticsearch中将变量赋值给min_score,我们在哪里可以实现得分逻辑?

时间:2016-11-30 05:33:07

标签: elasticsearch

我必须根据score.how限制文件数量,以便将变量分配给elasticsearch中的Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.1.1:sonar (default-cli) on project parent-pom: Error 500 on http://xxxx.com:8085/api/qualitygates/project_status?analysisId=110903732 -> [Help 1] ,我们在哪里可以实现得分逻辑?

1 个答案:

答案 0 :(得分:0)

您可以使用min_score节点检索至少具有指定最低分数的所有文档。

以下是JSON语法:

"min_score": 0.5

示例查询:

GET /_search
{
    "min_score": 0.5,
    "query" : {
        "term" : { "user" : "kimchy" }
    }
}

Reference link

<强>更新

要获得具有最高分数的前80%文档,首先通过获取单个最佳结果获得最高分数。下面的查询将返回单个最佳结果。从输出中存储max_score值。

GET /_search
{        
    "query" : {
        "term" : { "user" : "kimchy" }
    },
    "from" : 0,
    "size" : 1,
    "sort": [
                {
                    "_score": {
                        "order": "desc"
                    }
                }
            ]
}

我们说我们在回复中得到max_score值为306.7351。此值可用作min_score,以获得最佳效果。

GET /_search
{
    "min_score": 306.7351,
    "query" : {
        "term" : { "user" : "kimchy" }
    },
    "from" : 0,
    "size" : 10,
    "sort": [
                {
                    "_score": {
                        "order": "desc"
                    }
                }
            ]
}

希望这有帮助!