Elastic Stack--15--聚合查询(SUM、MAX、MIN、AVG)案例

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • ES的聚合查询(SUM、MAX、MIN、AVG)
    • 1.求和查询
    • 2.求平均值
    • 3.最大最小值查询
    • 4.唯一值查询 (类似于sql中的==distinct 去重==)
    • 5.stats聚合


ES的聚合查询(SUM、MAX、MIN、AVG)

1.求和查询

  • 例如查询cust_name_s为张三的txn_amt_d的和,sql语句是
select sum(txn_amt_d) as sum_number from trade_info.csrcb where cust_name_s = '张三'

对应的es的查询就是(此处与sql中的sum一样,也有起别名以及聚合方式的参数,其中的aggs可以写全,写成aggregatins)

curl -XPOST "http://192.168.236.131:9200/trade_info/csrcb/_search" -H "Content-Type:application/json" -d '{"query": {"term": {"cust_name_s.keyword": "张三"}},"aggs": {"sum_number": {"sum": {"field": "txn_amt_d"}}}
} '

在这里插入图片描述

2.求平均值

  • 例如查询cust_name_s为张三的txn_amt_d的平均值
select avg(txn_amt_d) as avg_number from trade_info.csrcb where cust_name_s = '张三'

同样在es的查询中只要指定聚合方式为avg即可

curl -XPOST "http://192.168.236.131:9200/trade_info/csrcb/_search" -H "Content-Type:application/json" -d '{"query": {"term": {"cust_name_s.keyword": "张三"}},"aggregations": {"avg_number": {"avg": {"field": "txn_amt_d"}}}
} '

在这里插入图片描述

3.最大最小值查询

  • 查询cust_name_s为张三的txn_amt_d的最大值和最小值,sql语句是
select max(txn_amt_d) as max_number, min(txn_amt_d) as min_number 
from trade_info.csrcb where cust_name_s = '张三'

同样只要指定最大最小的别名,并且指定聚合方式为max以及min即可

curl -XPOST "http://192.168.236.131:9200/trade_info/csrcb/_search" -H "Content-Type:application/json" -d '{"query": {"term": {"cust_name_s.keyword": "张三"}},"aggregations": {"max_number": {"max": {"field": "txn_amt_d"}},"min_number": {"min": {"field": "txn_amt_d"}}}
} '

在这里插入图片描述

4.唯一值查询 (类似于sql中的distinct 去重)

  • 使用cardinality求唯一值,即不重复的字段有多少,同样,统计的字段不能分词,例如统计cust_name_s字段的不重复的值
    在这里插入图片描述
curl -XPOST "http://192.168.236.131:9200/trade_info/csrcb/_search" -H "Content-Type:application/json" -d '{"size": 0,"query": {"match_all": {}},"aggregations": {"unique_num": {"cardinality": {"field": "cust_name_s.keyword"}}}
} '

在这里插入图片描述

5.stats聚合

使用stats聚合,可以将满足条件的记录直接统计最大最小、平均值、总和、记录数结果

  • 例如查询cust_name_s为张三的统计,统计的字段为txn_amt_d
curl -XPOST "http://192.168.236.131:9200/trade_info/csrcb/_search?pretty" -H "Content-Type:application/json" -d '{"size": 0,"query": {"term": {"cust_name_s.keyword": "张三"}},"aggregations": {"count_nums": {"stats": {"field": "txn_amt_d"}}}
} '

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/44590.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Qt:13.多元素控件(QLinstWidget-用于显示项目列表的窗口部件、QTableWidget- 用于显示二维数据表)

目录 一、QLinstWidget-用于显示项目列表的窗口部件: 1.1QLinstWidget介绍: 1.2属性介绍: 1.3常用方法介绍: 1.4信号介绍: 1.5实例演示: 二、QTableWidget- 用于显示二维数据表: 2.1QTabl…

如何在工作中开悟?

我常常会听到各种大佬分享的经验, 你要在工作中去寻找价值,多思考自己写的代码,多审视自己的工作,多回看自己成长。 你不能只当粘贴复制的码农,要成为写代码的程序员。 不能只当工具人,要多理解业务。 等等…

探索生命科学的新边疆:Transformer模型在生物医药领域的革命性应用

探索生命科学的新边疆:Transformer模型在生物医药领域的革命性应用 随着人工智能技术的飞速发展,Transformer模型已经从自然语言处理领域跨越到生物医药领域,为生物信息学和药物发现带来了新的机遇。本文将深入探讨Transformer模型在生物医药…

YOLOv10改进 | Conv篇 | 利用YOLO-MS的MSBlock轻量化网络结构(既轻量又长点)

一、本文介绍 本文给大家带来的改进机制是利用YOLO-MS提出的一种针对于实时目标检测的MSBlock模块(其其实不能算是Conv但是其应该是一整个模块),我们将其用于C2f中组合出一种新的结构,来替换我们网络中的模块可以达到一种轻量化的作用,我将其…

软航文档控件VUE示例运行及控件替换方法记录

目录 示例运行 步骤一、npm install 步骤二、npm run dev 软航文档控件替换 附 vue小白记录一下软航文档控件VUE示例的运行方法以及示例中控件的替换过程。 示例运行 在已经安装好VUE环境的电脑上,VUE环境部署可以参考另一篇:配置VUE环境过程中 …

Drools开源业务规则引擎(六)- Drools Flow中RuleFlow文件即*.rf文件介绍

文章目录 Drools开源业务规则引擎&#xff08;六&#xff09;- RuleFlow文件即*.rf文件介绍1.\<header>1.1.\<imports>a.标签格式b.属性说明c.示例代码 1.2.\<globals>a.标签格式b.属性说明c.示例代码 1.3.\<functionImports>a.标签格式b.属性说明c.示…

Open3D 计算点云FPFH特征

目录 一、概述 1.1法线估计 1.2SPFH&#xff08;Simplified Point Feature Histograms&#xff09;计算 1.3FPFH计算 二、代码实现 2.1关键函数 2.2完整代码 三、实现效果 3.1原始点云 3.2计算数据 一、概述 FPFH&#xff08;Fast Point Feature Histogram&#xff0…

安全策略与用户认证综合实验

一、实验拓扑 二、实验需求 1,DMZ区内的服务器,办公区仅能在办公时间内(9:00-18:00)可以访问,生产区的设备全天可以访问. 2,生产区不允许访问互联网,办公区和游客区允许访问互联网 3,办公区设备10.0.2.10不允许访问DMz区的FTP服务器和HTTP服务器,仅能ping通10.0.3.10 4,办公区…

nginx初理解

没有ngix时&#xff0c;有两台服务器&#xff0c;供访问 1. 现在有两台服务器上同样的路径下都放了一个&#xff0c; 都能通过ip加端口访问到页面 后端项目 &#xff08;查看tomcat中的配置中的 server.xml&#xff0c;能找到项目路径&#xff09; tomacat 也都有 两个…

LCR 136. 删除链表的节点

给定单向链表的头指针和一个要删除的节点的值&#xff0c;定义一个函数删除该节点。 返回删除后的链表的头节点。 示例 1: 输入: head [4,5,1,9], val 5 输出: [4,1,9] 解释: 给定你链表中值为 5 的第二个节点&#xff0c;那么在调用了你的函数之后&#xff0c;该链表应变…

加密与安全 密钥体系的三个核心目标之完整性解决方案

在密钥体系中&#xff0c;确保数据完整性是重要目标之一。以下为您详细讲解相关的完整性解决方案&#xff1a; 消息认证码&#xff08;MAC&#xff09;&#xff1a; 消息认证码是基于共享密钥和特定算法生成的固定长度代码。在发送方&#xff0c;将消息和共享密钥作为输入&…

C++ | Leetcode C++题解之第228题汇总区间

题目&#xff1a; 题解&#xff1a; class Solution { public:vector<string> summaryRanges(vector<int>& nums) {vector<string> ret;int i 0;int n nums.size();while (i < n) {int low i;i;while (i < n && nums[i] nums[i - 1] …

PostgreSQL数据库常用函数用法介绍

本文将介绍一些PostgreSQL中常用的函数&#xff0c;包括其用途、参数说明、使用示例、测试用例&#xff0c;以及一些复杂函数的使用。 1. length() 用途 计算字符串的长度。 参数说明 text&#xff1a;需要计算长度的字符串。 使用示例 SELECT length(PostgreSQL);输出&…

pytorch-RNN实战-正弦曲线预测

目录 1. 正弦数据生成2. 构建网络3. 训练4. 预测5. 完整代码6. 结果展示 1. 正弦数据生成 曲线如下图&#xff1a; 代码如下图&#xff1a; 50个点构成一个正弦曲线随机生成一个0~3之间的一个值&#xff08;随机的原因是防止每次都从相同的点开始&#xff0c;50个点的正弦曲…

《C++设计模式》状态模式

文章目录 一、前言二、实现一、UML类图二、实现 一、前言 状态模式理解最基本上的我觉得应该也是够用了&#xff0c;实际用的话&#xff0c;也应该用的是Boost.MSM状态机。 相关代码可以在这里&#xff0c;如有帮助给个star&#xff01;AidenYuanDev/design_patterns_in_mode…

【PTA天梯赛】L1-005 考试座位号(15分)

作者&#xff1a;指针不指南吗 专栏&#xff1a;算法刷题 &#x1f43e;或许会很慢&#xff0c;但是不可以停下来&#x1f43e; 文章目录 题目题解try1 编译错误正确题解 总结 题目 题目链接 题解 try1 编译错误 #include<bits/stdc.h> using namespace std;typedef…

sdwan是硬件还是网络协议?

SD-WAN&#xff08;Software-Defined Wide Area Network&#xff0c;软件定义广域网&#xff09;并不是一个硬件产品或单一的网络协议&#xff0c;而是结合了软件、硬件和网络技术的一种解决方案。SD-WAN的核心在于其软件定义的特性&#xff0c;它通过软件来控制和管理广域网的…

ENSP软件中DHCP的相关配置以及终端通过域名访问服务器

新建拓扑 配置路由器网关IP 设备配置命令&#xff1a;<Huawei> Huawei部分为设备名 <>代表当下所在的模式&#xff0c;不同模式下具有不同的配置权限<Huawei> 第一级模式&#xff0c;最低级模式 查看所有参数<Huawei>system-view 键入系统视图…

探索未来:Transformer模型在智能环境监测的革命性应用

探索未来&#xff1a;Transformer模型在智能环境监测的革命性应用 在当今数字化时代&#xff0c;环境监测正逐渐从传统的人工检测方式转变为智能化、自动化的系统。Transformer模型&#xff0c;作为深度学习领域的一颗新星&#xff0c;其在自然语言处理&#xff08;NLP&#x…

鸿蒙开发:每天一个小bug----鸿蒙开发路由跳转踩坑

一、前言 报错内容显示找不到页面 &#xff0c;肯定我们页面没写对呗&#xff01; 可能是这几个原因:1.main_pages.json没配置路由 {"src": ["pages/02/UserInfoClass","pages/02/AppStorageCase02"] } 2.跳转路径没写对 错误&#xff1a;…