如何检查数组中是否包含整数 0 Painless, ElasticSearch

How to check if the integer 0 is contained in an array Painless, ElasticSearch

我是 Painless 脚本语言的新手,我相信我的问题很简单:我数据中的一个字段是一个整数数组。我想添加一个运行时映射,如果 0 在数组中则返回 false,否则返回 true。我尝试了以下方法:

PUT my_index/_mapping
{
  "runtime": {
    "success": {
      "type": "boolean",
      "script": {
        "source": "emit(doc['my_key'].contains(0))" }
    }
  }
}

return 每次都是“假”,所以我想我做错了(我确定并非所有这些数组都包含 0)。

感谢您的帮助!

试试这个:

"source": "emit(doc['my_key'].indexOf(0L) >= 0)" }