zoukankan      html  css  js  c++  java
  • elasticsearch聚合函数

    计算每个tag下的商品数量

    GET /ecommerce/product/_search

    {

      "aggs": {  //聚合

        "group_by_tags": { //聚合任意名字

          "terms": { "field": "tags" }  //terms分组字段得到分组数量

        }

      }

    }

    对名称中包含yagao的商品,计算每个tag下的商品数量

    GET /ecommerce/product/_search

    {

      "size": 0,

      "query": {

        "match": {

          "name": "yagao"

        }

      },

      "aggs": {

        "all_tags": {

          "terms": {

            "field": "tags"

          }

        }

      }

    }

    先分组,再算每组的平均值,计算每个tag下的商品的平均价格

    GET /ecommerce/product/_search

    {

        "size": 0,

        "aggs" : {

            "group_by_tags" : {

                "terms" : { "field" : "tags" },

                "aggs" : {

                    "avg_price" : {  //起分组名字

                        "avg" : { "field" : "price" }  //avg聚合函数

                    }

                }

            }

        }

    }

    计算每个tag下的商品的平均价格,并且按照平均价格降序排序

    GET /ecommerce/product/_search

    {

        "size": 0,

        "aggs" : {

            "all_tags" : {

                "terms" : { "field" : "tags", "order": { "avg_price": "desc" } },

                "aggs" : {

                    "avg_price" : {

                        "avg" : { "field" : "price" }

                    }

                }

            }

        }

    }

    按照指定的价格范围区间进行分组,然后在每组内再按照tag进行分组,最后再计算每组的平均价格

    GET /ecommerce/product/_search

    {

      "size": 0,

      "aggs": {

        "group_by_price": {

          "range": {

            "field": "price",

            "ranges": [

              {

                "from": 0,

                "to": 20

              },

              {

                "from": 20,

                "to": 40

              },

              {

                "from": 40,

                "to": 50

              }

            ]

          },

          "aggs": {

            "group_by_tags": {

              "terms": {

                "field": "tags"

              },

              "aggs": {

                "average_price": {

                  "avg": {

                    "field": "price"

                  }

                }

              }

            }

          }

        }

      }

    }

  • 相关阅读:
    国内源 maven 配置 + SSM 脚手架 整合
    Google XSS 小游戏 答案
    鉴影记录
    记录 完美解码 配置
    HttpCanary 破解 可注入 【拒绝度盘】【20200606有效】
    MyBatisCodeHelper-Pro插件破解版[2.8.2] 【拒绝度盘】
    博客园主题
    wdcp后台登陆访问失败处理方法
    分享一下自己渗透挖洞方法与思维
    服务器安装宝塔linux系统控制面板
  • 原文地址:https://www.cnblogs.com/kesimin/p/9559946.html
Copyright © 2011-2022 走看看