Elasticsearch - 如何在 bodybuilder 中将 `boost` 添加到 `constant_score`?

Elasticsearch - how do i add `boost` to `constant_score` in bodybuilder?

我有以下健美查询:-

bodybuilder()
        .orQuery('match_all', {})
        .orQuery('constant_score', null , (qr) => {
           return qr.filter('range', 'stock_sum', {gte: 1})
         })
        .build()

其中基本上生成如下(查询模拟器HERE

{
  "query": {
    "bool": {
      "should": [
        {
          "match_all": {}
        },
        {
          "constant_score": {
            "filter": {
              "range": {
                "stock_sum": {
                  "gte": 1
                }
              }
            }
          }
        }
      ]
    }
  }
}

现在我想做的是增加 constant_score 的提升,如文档 HERE 中突出显示的那样。但是我没有找到办法,所以我基本上想要的是以下内容:-

{
  "constant_score": {
      "filter": {
      "term": {
        "stock_sum": 0
      }
    },
    "boost": 10
  }
}

现在我能做的一件事就是像这样在“stock_sum”之后立即添加 "boost": 10,但我不确定这是否是同一回事。

{
  "constant_score": {
      "filter": {
      "term": {
        "stock_sum": 0
        "boost": 10
      }
    },
  }
}

所以我想基本上我的主要问题是如何在健美运动员中将 boost 添加到 constant_score

P.S。如果我可以问一个补充问题,我无法在 elasticview 中看到 _score,我究竟是怎么看到的?

注意:- 我不想使用 rawOption

这对您添加提升应该有用:

bodybuilder()
        .orQuery('match_all', {})
        .orQuery('constant_score', {boost: 10} , (qr) => {
           return qr.filter('range', 'stock_sum', {gte: 1})
         })
        .build()