• 【ES】学习11-多桶排序


    聚合结果的排序

    默认:桶会根据 doc_count 降序排列。

    内置排序:

    设置按doc_count升序排序:注意order_count

    GET /cars/transactions/_search
    {
        "size" : 0,
        "aggs" : {
            "colors" : {
                "terms" : {
                  "field" : "color",
                  "order": {
                    "_count" : "asc" 
                  }
                }
            }
        }
    }

    其他排序关键字:

    _count  按文档数排序。对 terms 、 histogram 、 date_histogram 有效。

    _term  按词项的字符串值的字母顺序排序。只在 terms 内使用。

    _key  按每个桶的键值数值排序(理论上与 _term 类似)。 只在 histogram 和date_histogram 内使用。

    按度量排序:根据字段名称引用度量即可

    GET /cars/transactions/_search
    {
        "size" : 0,
        "aggs" : {
            "colors" : {
                "terms" : {
                  "field" : "color",
                  "order": {
                    "avg_price" : "asc" 
                  }
                },
                "aggs": {
                    "avg_price": {
                        "avg": {"field": "price"} 
                    }
                }
            }
        }
    }

    多值度量使用点式路径:extended_stats度量输出多个度量值

    GET /cars/transactions/_search
    {
        "size" : 0,
        "aggs" : {
            "colors" : {
                "terms" : {
                  "field" : "color",
                  "order": {
                    "stats.variance" : "asc" 
                  }
                },
                "aggs": {
                    "stats": {
                        "extended_stats": {"field": "price"}
                    }
                }
            }
        }
    }

    深层路径:>嵌套

    GET /cars/transactions/_search
    {
        "size" : 0,
        "aggs" : {
            "colors" : {
                "histogram" : {
                  "field" : "price",
                  "interval": 20000,
                  "order": {
                    "red_green_cars>stats.variance" : "asc" 
                  }
                },
                "aggs": {
                    "red_green_cars": {
                        "filter": { "terms": {"color": ["red", "green"]}}, 
                        "aggs": {
                            "stats": {"extended_stats": {"field" : "price"}} 
                        }
                    }
                }
            }
        }
    }
  • 相关阅读:
    mysql
    Spring MVC
    springSecurity
    导出Excel报表
    Redis集群搭建
    Oracle 分析数据库表行长度的统计信息 使用聚簇的步骤
    Dbms.job 学习
    oracel 学习系列
    Oracle 工具类 Sql 分析索引的 碎片率
    oracl
  • 原文地址:https://www.cnblogs.com/dplearning/p/7026960.html
Copyright © 2020-2023  润新知