es中报错no [query] registered for [missing]

这是由于新版本的 es 已经不支持missing这个语法,它可以用现有的exists来实现。

找出包含price的数据可以如下实现

{
  "query": {
    "exists": {
      "field": "price"
    }
  }
}

那么,找出不包含price的数据只需要将其取个反即可,可以用must_not来实现。

{
  "query": {
    "bool": {
      "must_not": {
        "exists": {
          "field": "price"
        }
      }
    }
  }
}
如果您觉得本文对您有用,欢迎捐赠或留言~
微信支付
支付宝

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注