在 Elasticsearch 中,可以使用范围聚合查询来聚合特定字段中的数值。具体步骤如下:

  1. 创建一个聚合查询请求。
  2. 在聚合查询请求中,使用 'range' 聚合来定义范围查询。
  3. 指定要聚合的字段。
  4. 使用 'range' 聚合的 'key' 参数来定义数值范围。
  5. 执行聚合查询请求,获取结果。

下面是一个示例聚合查询请求,通过按年龄范围聚合查询用户:

{
    "aggs" : {
        "age_ranges" : {
            "range" : {
                "field" : "age",
                "ranges" : [
                    { "from" : 0, "to" : 20 },
                    { "from" : 20, "to" : 30 },
                    { "from" : 30, "to" : 40 },
                    { "from" : 40, "to" : 50 },
                    { "from" : 50, "to" : 60 },
                    { "from" : 60 }
                ]
            }
        }
    }
}

在上面的聚合查询请求中,我们使用 'range' 聚合来按照年龄范围聚合查询用户。我们指定了要聚合的字段为 'age',并使用 'ranges' 参数来定义数值范围。我们定义了 6 个范围,从 0 到 20 岁、从 20 到 30 岁、从 30 到 40 岁、从 40 到 50 岁、从 50 到 60 岁和 60 岁以上。

执行以上查询,我们将得到按年龄范围聚合查询用户的结果。

Elasticsearch 数值范围聚合查询教程:按年龄范围分组用户

原文地址: https://www.cveoy.top/t/topic/nXSr 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录