加载中

数组比较条件

Elastic Stack Serverless

使用 array_compare 将执行上下文中的值数组与给定值进行比较。 有关可以使用的运算符,请参见表 84

要使用 array_compare 条件,您需要指定要评估的执行上下文中的数组、一个比较运算符以及要比较的值。 (可选)您可以指定要评估的每个数组元素中字段的路径。

例如,如果聚合中至少有一个存储桶的 doc_count 大于或等于 25,则以下 array_compare 条件将返回 true

{
  "condition": {
    "array_compare": {
      "ctx.payload.aggregations.top_tweeters.buckets" : {
        "path": "doc_count",
        "gte": {
          "value": 25
        }
      }
    }
  }
}
  1. 您要评估的执行上下文中数组的路径,以点表示法指定。
  2. 您要评估的每个数组元素中字段的路径。
  3. 要使用的比较运算符
  4. 比较值。 支持日期数学,如比较条件
注意

当使用包含点的字段名称时,此条件将不起作用,请改用脚本条件

名称 描述
<数组路径> 执行上下文中数组的路径,以点表示法指定。 例如,ctx.payload.aggregations.top_tweeters.buckets
<数组路径>.path 您要评估的每个数组元素中字段的路径。 例如,doc_count。 默认为空字符串。
<数组路径>.<运算符>.量词 比较评估为 true 需要多少个匹配项:someall。 默认为 some,即必须至少有一个匹配项。 如果数组为空,则如果量词设置为 all,则比较评估为 true;如果量词设置为 some,则比较评估为 false
<数组路径>.<运算符>.value 要比较的值。
© . All rights reserved.