aggregations | 学习笔记

简介: 快速学习 aggregations

开发者学堂课程【ElasticSearch 入门精讲aggregations学习笔记,与课程紧密连接,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/631/detail/9999


Aggregations


ES 查询详解之 aggregations

根据字段进行分组统计

根据字段分组,统计其他字段的值

size 设置为0,会获取所有数据,否则,只会返回10条。

/**

*聚合查询演示

*/

@Test

public void aggregationsearch() {

//需求:查询 bank 索引库中,所有女性员工数,最年轻的员工的年龄,最低薪水(银行存款余额),以及平均薪水。

//步骤:

//1)检索

SearchResponse response=client.prepareSearch(indices)

.setTypes("account")

//设置检索的条件

.setQuery(QueryBui1ders.termquery("gender.keyword","F"))

//设置聚合操作

//1员工数

.addAggregation(new valueCountAggregationBuilder("cntemp",ValueType.LONG).fie1d("account_number"))

//1最年轻的(女性)员工的年龄.addAggregation(new MinAggregationBuilder("minage").field("age"))

//1(女性员工)最少银行存款余额.addAggregation(new Minaggregationbuilder("minBalance").field("balance"))

//1(女性员工)平均银行存款余额.addAggregation(new AvgAggregationbui1der("avgbalance").field("balance"))

//触发检索

.get();

//2)分析检索后的结果

Aggregations aggregations=response.getaggregations():

ValueCount cntEmp=aggregations.get("cntEmp");

Min minAge=aggregations.get("minAge");

Min minBalance=aggregations.get("minbalance");

Avg avgBalance=aggregations.get("avgBalance");

//3)显示结果

//%d,占位符,同时也是格式符,用来格式化整数的;%f:格式化小数:%s:格式化字符串;%n:用来换行

system.out.printf("bank索引库中,所有女性员工数是:%d,最年轻的员工的年龄:%.0f,最低银行存款余额:%.2f,以及平均银行存款余额:%.2f”,cntEmp.getvalue(),minAge.getvalue(),minbalance.getvalue(),avgBalance.getvalue());

}

相关文章
LeetCode 115. Distinct Subsequences
给定字符串S和字符串T,计算S的不同子序列的数量,使其其等于T. 字符串的子序列是一个新字符串,它是通过删除一些(可以是无)字符而不干扰其余字符的相对位置而从原始字符串形成的。 (即,“ACE”是“ABCDE”的子序列,而“AEC”不是)。
67 0
LeetCode 115. Distinct Subsequences
|
开发者 索引
Aggregations|学习笔记
快速学习 Aggregations。
309 0
Aggregations|学习笔记
|
数据挖掘 BI 开发者
groupby 操作|学习笔记
快速学习 groupby 操作
128 0
groupby 操作|学习笔记
|
开发者 索引
Distinct
SQL 去重
150 0
|
开发者 索引
shards|学习笔记
快速学习 shards。
|
缓存 Java 关系型数据库
Es Bucket聚合(桶聚合) Terms Aggregation与Significant Terms Aggregation
Es Bucket聚合(桶聚合) Terms Aggregation与Significant Terms Aggregation
Es Bucket聚合(桶聚合) Terms Aggregation与Significant Terms Aggregation
|
存储 SQL 分布式计算
Solr Facet引发思考 on the road
假期重新把之前在新浪博客里面的文字梳理了下,搬到这里。
132 0
|
索引
Es Bucket聚合(桶聚合) 第二篇-Terms Aggregation与Significant Terms Aggregation
本章将介绍elasticsearch最重要的桶聚合terms aggregation。 1、Terms Aggregation 多值聚合,根据库中的文档动态构建桶。基于词根的聚合,如果聚合字段是text的话,会对一个一个的词根进行聚合,通常不会在text类型的字段上使用聚合,对标关系型数据中的(Group By)。
2853 0