zoukankan      html  css  js  c++  java
  • ES学习(四)--嵌套聚合、下钻分析、聚合分析

    一、 先将文本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"
                    }
                  }
                }
              }
            }
          }
        }
      }

  • 相关阅读:
    POJ 2794 Exploring Pyramids
    POJ 2282 The Counting Problem
    eclipse中设置java注释模板
    eclipse复制工程需要注意的地方
    extjs的强大利器GUI设计工具(extjs designer)
    eclipse项目名前出现红色感叹号,小红叉解决(转)
    上传一份个人学习struts2的历程笔记
    struts2中的action与actioncontext的理解
    J2EE后台UI系统框架搭建EXTJs使用(4.1 GPL版本)
    java.lang.OutOfMemoryError: Java heap space 解决方法转测试可用
  • 原文地址:https://www.cnblogs.com/DjanFey/p/12114578.html
Copyright © 2011-2022 走看看