谷粒商城day71 -全文检索-ElasticSearch-进阶-aggregations聚合分析

本文主要是介绍谷粒商城day71 -全文检索-ElasticSearch-进阶-aggregations聚合分析,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

链接Aggregations | Elasticsearch Guide [7.10] | Elastic

现在我带大家来入门学习

如下我先查出 address  模糊匹配mill 的数据,类似于sql中的like

第一个聚合

 现在我发现查出四条数据,我还想看看他们的年龄分布,

这个时候需要使用aggs  

然后加入一个聚合对象,然后里面是聚合类型是terms 用来查看分布 最里层声明是哪个属性

可以看到右侧的结果,除了上面的查询结果 下面 countAge内的buckets内  有各年龄段人数的统计

就类似于 sql中的 count ... group by  ...

第二个聚合

查出年龄分布后再查出年龄平均值

不想看查询结果

指定size为0即可

 添加子聚合

比如我想看所有人的年龄分布,以及这些年龄分布里面的平均薪资

 现在知道如何添加子聚合(也就是聚合内添加聚合后)

实现 除了如上得到年龄分布以及平均薪资外,我还要得到,年龄分布中的男女的数量以及他们的平均薪资

 就到这,上面几个都是常用的,关于平均值与统计数量,其他的可以去上面贴过的链接学习

 添加子聚合加上 条件过滤

下面这段查询是 找出所有职员中,地址中包含 Avenue年龄 20到40区间的职员

的男女各自的的平均薪资 与 这个年龄段所有人的平均薪资

GET /bank/_search
{"query": {"bool": {"must": [{"match": {"address": "Avenue"}}], "filter": {"range": {"age": {"gte": 20,"lte": 40}}}}
},"aggs": {"ageAgg": {"terms": {"field": "age","size": 100},"aggs": {"genderAgg": {"terms": {"field": "gender.keyword"},"aggs": {"genderBlanceAgg": {"avg": {"field": "balance"}}}},"balanceAgg":{"avg": {"field": "balance"          }}}}}
}

查詢結果的分组部分如下

 

这篇关于谷粒商城day71 -全文检索-ElasticSearch-进阶-aggregations聚合分析的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/271227

相关文章

从基础到进阶详解Python条件判断的实用指南

《从基础到进阶详解Python条件判断的实用指南》本文将通过15个实战案例,带你大家掌握条件判断的核心技巧,并从基础语法到高级应用一网打尽,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录​引言:条件判断为何如此重要一、基础语法:三行代码构建决策系统二、多条件分支:elif的魔法三、

Python进阶之列表推导式的10个核心技巧

《Python进阶之列表推导式的10个核心技巧》在Python编程中,列表推导式(ListComprehension)是提升代码效率的瑞士军刀,本文将通过真实场景案例,揭示列表推导式的进阶用法,希望对... 目录一、基础语法重构:理解推导式的底层逻辑二、嵌套循环:破解多维数据处理难题三、条件表达式:实现分支

基于Python编写自动化邮件发送程序(进阶版)

《基于Python编写自动化邮件发送程序(进阶版)》在数字化时代,自动化邮件发送功能已成为企业和个人提升工作效率的重要工具,本文将使用Python编写一个简单的自动化邮件发送程序,希望对大家有所帮助... 目录理解SMTP协议基础配置开发环境构建邮件发送函数核心逻辑实现完整发送流程添加附件支持功能实现htm

Android 缓存日志Logcat导出与分析最佳实践

《Android缓存日志Logcat导出与分析最佳实践》本文全面介绍AndroidLogcat缓存日志的导出与分析方法,涵盖按进程、缓冲区类型及日志级别过滤,自动化工具使用,常见问题解决方案和最佳实... 目录android 缓存日志(Logcat)导出与分析全攻略为什么要导出缓存日志?按需过滤导出1. 按

Linux中的HTTPS协议原理分析

《Linux中的HTTPS协议原理分析》文章解释了HTTPS的必要性:HTTP明文传输易被篡改和劫持,HTTPS通过非对称加密协商对称密钥、CA证书认证和混合加密机制,有效防范中间人攻击,保障通信安全... 目录一、什么是加密和解密?二、为什么需要加密?三、常见的加密方式3.1 对称加密3.2非对称加密四、

基于Python实现进阶版PDF合并/拆分工具

《基于Python实现进阶版PDF合并/拆分工具》在数字化时代,PDF文件已成为日常工作和学习中不可或缺的一部分,本文将详细介绍一款简单易用的PDF工具,帮助用户轻松完成PDF文件的合并与拆分操作... 目录工具概述环境准备界面说明合并PDF文件拆分PDF文件高级技巧常见问题完整源代码总结在数字化时代,PD

javaSE类和对象进阶用法举例详解

《javaSE类和对象进阶用法举例详解》JavaSE的面向对象编程是软件开发中的基石,它通过类和对象的概念,实现了代码的模块化、可复用性和灵活性,:本文主要介绍javaSE类和对象进阶用法的相关资... 目录前言一、封装1.访问限定符2.包2.1包的概念2.2导入包2.3自定义包2.4常见的包二、stati

MySQL中读写分离方案对比分析与选型建议

《MySQL中读写分离方案对比分析与选型建议》MySQL读写分离是提升数据库可用性和性能的常见手段,本文将围绕现实生产环境中常见的几种读写分离模式进行系统对比,希望对大家有所帮助... 目录一、问题背景介绍二、多种解决方案对比2.1 原生mysql主从复制2.2 Proxy层中间件:ProxySQL2.3

python使用Akshare与Streamlit实现股票估值分析教程(图文代码)

《python使用Akshare与Streamlit实现股票估值分析教程(图文代码)》入职测试中的一道题,要求:从Akshare下载某一个股票近十年的财务报表包括,资产负债表,利润表,现金流量表,保存... 目录一、前言二、核心知识点梳理1、Akshare数据获取2、Pandas数据处理3、Matplotl

python panda库从基础到高级操作分析

《pythonpanda库从基础到高级操作分析》本文介绍了Pandas库的核心功能,包括处理结构化数据的Series和DataFrame数据结构,数据读取、清洗、分组聚合、合并、时间序列分析及大数据... 目录1. Pandas 概述2. 基本操作:数据读取与查看3. 索引操作:精准定位数据4. Group