弹性搜索文档脚本排序



我有一个返回分数 NULL 的查询。

{
  "query": {
    "match_all": {}
  },
  "sort": {
    "_script": {
      "script": "doc['price'].value * doc['sales.quarter'].value",
      "type": "number",
      "order": "desc"
    }
  },
  "size": 15,
  "from": 0
}

我想获得第 15 名的最佳销售额,此查询返回的_score等于 NULL

你知道为什么会这样吗?

我找到了解决方案:自定义分数查询!

{
  "query": {
    "custom_score": {
      "query": {
        "match_all": {}
      },
      "script": "doc['sales.quarter'].value * doc['price'].value"
    }
  },
  "size": 15,
  "from": 0
}

最新更新