首页 > 其他 > 详细

ES学习(四)--嵌套聚合、下钻分析、聚合分析

时间:2019-12-29 12:28:34      阅读:132      评论:0      收藏:0      [点我收藏+]

一、 先将文本field的fielddata属性设置为true
  PUT /ecommerce/_mapping
  {
    "properties":{
      "tags":{
        "type":"text",
        "fielddata":true
      }
    }
  }

二、统计每个tag下的商品数量

  A、GET /ecommerce/_search
    {
      "size": 0, 
      "aggs": {
        "group_by_tags": {
          "terms": {
            "field": "tags"
          }
        }
      }
    }
三、 对名称中包含yagao的商品,计算每个tag下的数量
    GET /ecommerce/_search
    {
      "query": {
        "match": {
          "name": "yagao"
        }
      }
      , "aggs": {
        "group_by_tags": {
          "terms": {
            "field": "tags"
          }
        }
      }
    }

四、计算每个tag下的平均价格
    GET /ecommerce/_search
    {
      "aggs": {
        "group_by_tags": {
          "terms": {
            "field": "tags",
            "order": {
              "avg_price": "desc"
            }
          },
          "aggs": {
            "avg_price": {
              "avg": {
                "field": "price"
              }
            }
          }
        }
      }
    }
五、 按照指定价格区间进行分组,然后在每组内按照tag进行分组,最后再计算每组的平均价格
  GET /ecommerce/_search
  {
    "size": 0,
    "aggs": {
      "group_by_range": {
        "range": {
          "field": "price",
          "ranges": [
            {
              "from": 0,
              "to": 30
            },
            {
              "from": 30,
              "to":60
            }
          ]
        },
        "aggs": {
          "group_by_tags": {
            "terms": {
              "field": "tags"
            },
            "aggs": {
              "avg_price": {
                "avg": {
                  "field": "price"
                }
              }
            }
          }
        }
      }
    }
  }

ES学习(四)--嵌套聚合、下钻分析、聚合分析

原文:https://www.cnblogs.com/DjanFey/p/12114578.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!