常量分数查询

编辑

封装一个 过滤查询,并为每个匹配的文档返回一个等于 boost 参数值的相关性评分

resp = client.search(
    query={
        "constant_score": {
            "filter": {
                "term": {
                    "user.id": "kimchy"
                }
            },
            "boost": 1.2
        }
    },
)
print(resp)
response = client.search(
  body: {
    query: {
      constant_score: {
        filter: {
          term: {
            'user.id' => 'kimchy'
          }
        },
        boost: 1.2
      }
    }
  }
)
puts response
const response = await client.search({
  query: {
    constant_score: {
      filter: {
        term: {
          "user.id": "kimchy",
        },
      },
      boost: 1.2,
    },
  },
});
console.log(response);
GET /_search
{
  "query": {
    "constant_score": {
      "filter": {
        "term": { "user.id": "kimchy" }
      },
      "boost": 1.2
    }
  }
}

constant_score 的顶层参数

编辑
filter

(必需,查询对象)您希望运行的过滤查询。任何返回的文档都必须匹配此查询。

过滤查询不计算相关性评分。为了提高性能,Elasticsearch 会自动缓存常用的过滤查询。

boost
(可选,浮点数)用作每个匹配filter查询的文档的常量相关性评分的浮点数。默认为1.0