【MySQL】学习并使用聚合函数和DQL进行分组查询

](https://img-home.csdnimg.cn/images/20220524100510.png#pic_center)

🌈个人主页: Aileen_0v0
🔥热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法
💫个人格言:“没有罗马,那就自己创造罗马~”

account for 解释

文章目录

  • `SQL`
    • `DQL-聚合函数`
    • `常见的聚合函数`
    • `聚合函数使用语法`
  • `聚合函数Exercises`
    • `1.统计该企业员工数量`
    • ` 2.统计该企业员工的平均年龄`
    • `3.统计该企业员工的最大年龄`
    • `4.统计该企业员工的最小年龄`
    • `5.统计西安地区员工的年龄之和`
  • `DQL-分组查询`
    • `分组查询的语法`
  • `Exercises`
    • `1.根据性别分组,统计男性员工和女性员工的数量`
    • `2.根据性别分组,统计男性员工 和 女性员工的平均年龄`
    • `3. 查询年龄小于45的员工,并根据工作地址分组,获取员工数量大于等于三的工作地址`

SQL

DQL-聚合函数

聚合函数:将一列数据作为一个整体,进行纵向计算。

常见的聚合函数

函数功能
count统计数量
max 最大值
min最小值
avg平均值
sum求和

注意:null值不参与所有聚合函数运算。


聚合函数使用语法

SELECT 聚合函数(字段列表)FROM 表名;

聚合函数Exercises

1.统计该企业员工数量

select  count( * )from emp;

在这里插入图片描述


2.统计该企业员工的平均年龄

select avg (age) from emp;

在这里插入图片描述


3.统计该企业员工的最大年龄

select max (age) from emp;

在这里插入图片描述


4.统计该企业员工的最小年龄

select min (age) from emp;

在这里插入图片描述


5.统计西安地区员工的年龄之和

select sum(age) from emp where WORKADDRESS = '西安';

在这里插入图片描述


DQL-分组查询

分组查询的语法

SELECT 字段列表 FROM 表名 [ WHERE 条件 ] GROUP BY 分组字段名 [ HAVING 分组后过滤条件 ];
where 和 having 区别
	                                   执行时机不同:where 是分组之前进行过滤,不满足where 条件,不参与分组;而having 是分组之后对结果进行过滤。
where 和 having 区别
	                                   判断条件不同:where 不能对聚合函数进行判断,而 having可以。

⚠️注意:

  • 执行顺序: where > 聚合函数 > having。
  • 分组之后,查询的字段一般为聚合函数和分组字段,查询其它字段无任何意义。

Exercises

1.根据性别分组,统计男性员工和女性员工的数量

select gender ,  count(*) from emp group by  GENDER;

在这里插入图片描述

2.根据性别分组,统计男性员工 和 女性员工的平均年龄

select gender , avg(age) from emp group by gender;

在这里插入图片描述

3. 查询年龄小于45的员工,并根据工作地址分组,获取员工数量大于等于三的工作地址

select WORKADDRESS,  count(*)  from  emp where AGE<45 group by WORKADDRESS having count(*) >= 3;

在这里插入图片描述
](https://img-home.csdnimg.cn/images/20220524100510.png#pic_center)

](https://img-home.csdnimg.cn/images/20220524100510.png#pic_center)

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

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

相关文章

飞桨大模型分布式训练技术

今天我为大家介绍飞桨大模型分布式训练技术&#xff0c;内容分为以下几个部分&#xff1a; 首先&#xff0c;我会介绍大模型训练面临的重点难题&#xff1b;然后&#xff0c;为大家介绍飞桨在大模型训练领域的特色分布式训练技术和优化方案&#xff1b;最后&#xff0c;伴随着…

ONLYOFFICE | 免费开源办公神器新选择

目录 前言&#xff1a; 1、什么是ONLYOFFICE&#xff1f; 2、ONLYOFFICE下载使用 3、ONLYOFFICE团队协作云办公功能 4、ONLYOFFICE 8.0新版本的亮点功能 4.1、显示协作者头像 4.2、插件 UI 界面更新 4.3、可填写的 PDF 表单 5、最后 前言&#xff1a; 一个好的开发工具…

blender关于几何接近(geometry proximity)节点的理解

如图&#xff0c;可以见到&#xff0c;我输入了一个立方体&#xff0c;一个圆锥体&#xff0c;为了便于区分 &#xff0c;将原生的立方体与圆锥转为了曲线&#xff0c;而进行了几何接近处理的网格不进行此转换。 几何接近的输入端&#xff0c;分为target&#xff08;目标&…

Adobe Photoshop 2024 v25.4.0 - 专业的图片设计软件

Adobe Photoshop 2024 v25.4.0更新了&#xff0c;从照片编辑和合成到数字绘画、动画和图形设计&#xff0c;任何您能想象到的内容都能通过PS2024轻松实现。 利用人工智能技术进行快速编辑。学习新技能并与社区分享您的工作。借助我们的最新版本&#xff0c;做令人惊叹的事情从未…

更改远程桌面网关端口和远程Web应用程序端口

很多玩Home-Lab的小伙伴会使用远程桌面网关&#xff08;Remote Desktop Gateway&#xff09;来安全远程家庭内网的计算机&#xff0c;但由于国内电信法律法规的原因&#xff0c;普通家庭宽带并不能使用默认的443端口&#xff08;TCP&#xff09;和3391端口&#xff08;UDP&…

qt-C++笔记之QStringList、QList<QString>、QString、QChar、QList<QChar>区别

qt-C笔记之QStringList、QList、QString、QChar、QList区别 —— 杭州 2024-01-30 凌晨0:27 参考博文&#xff1a;qt-C笔记之QStringList code review! 文章目录 qt-C笔记之QStringList、QList<QString>、QString、QChar、QList<QChar>区别1.Qt的字符容器类1.QSt…

postgresql 查询缓慢原因分析

pg_stat_activity 最近发现系统运行缓慢&#xff0c;查询数据老是超时&#xff0c;于是排查下pg_stat_activity 系统表&#xff0c;看看有没有耗时的查询sql SELECT pid, state, query, query_start, backend_type FROM pg_stat_activity WHERE state active AND query LIK…

Android 使用高德地图

一、获取高德平台key 【1】基于application包名&sha1值在高德控制台获取key值&#xff0c;详情参考&#xff1a; 获取Key-创建工程-开发指南-Android 地图SDK | 高德地图API 【2】在manifest中声明权限 【3】将拿到的key值在manifest中进行声明 <!--允许程序打开网络…

git clone常见问题一览及解决方法

在使用Ubuntu下&#xff0c;终端运行git clone命令时会遇见许多问题&#xff0c;本文主要针对一些常见的问题进行整理。关于换源问题&#xff0c;推荐使用小鱼的一键换源。 1.git clone 速度过慢 1.1 魔法 这个方法不做过多赘述&#xff0c;ubuntu下个人使用发现体验良好&am…

【Java】创建一个SpringBoot项目

软件版本&#xff1a;IDE专业版 一、创建 创建项目时&#xff0c;要注意的有下面几点 1、 为了使用JDK1.8&#xff0c;我们在创建时用阿里云国服&#xff0c;将Server URL &#xff1a; https://start.spring.io/ 或者http://start.springboot.io/更改为&#xff1a;https:/…

Roxlabs全球IP代理服务:解锁高效数据采集与网络应用新境界

引言 在这个数字化迅速发展的时代&#xff0c;数据采集和网络应用的重要性显得愈发突出。江苏阿克索网络科技有限公司旗下的Roxlabs&#xff0c;以其卓越的全球IP代理服务&#xff0c;正引领着这一领域的创新和发展。Roxlabs不仅提供遍及200多个国家和地区的高质量动态住宅IP资…

Java基础—面向对象—19static关键字详解、抽象类、接口、N种内部类

1、static关键字 匿名代码块、静态代码块、构造方法 静态代码块是在类加载的时候执行&#xff0c;仅执行一次 匿名代码块在调用构造函数之前 验证如下图&#xff1a; 2、静态导入包&#xff08;可能很多人听都没听过&#xff09; 3、Math是用final关键字的&#xff0c;fina…

日调用量超千万,超低查询延迟!跨越速运基于Flink + OceanBase的实时分析解决方案与实践

跨越速运成立于 2007 年&#xff0c;是一家在物流行业颇具影响力的大型综合速运企业。随着国内经济的持续增长&#xff0c;消费者的购物习惯也在不断变化&#xff0c;对物流行业的需求呈现爆发式增长。目前&#xff0c;跨越速运的服务已经覆盖全国 99% 的城市&#xff0c;年服务…

边缘计算第二版——第5章 边缘计算系统平台

5.3 面向智能家居的边缘计算系统 5.3.1 为什么要用EdgeOsH 智能家居的定义&#xff1a;一个自动化且智能的家居环境&#xff0c;使得居住者能够享受更健康、更舒适的生活。为了满足和改善居住者的生活方式&#xff0c;智能家居应该同时具备自我意识、自我管理、自我学习的能力…

【项目管理】整合管理

一、管理基础 1、项目整合管理由项目经理负责&#xff0c;项目经理负责整合所有其他知识领域的成果&#xff0c;并掌握项目总体情况。项目整合管理的责任不能被授权或转移&#xff0c;项目经理必须对整个项目承担最终责任。整合是项目经理的一项关键技能。执行项目整合时项目经…

java学习_数组

数组的储存原理 java内存分配数组名.length动态初始化数组的初始化 静态初始化 数组的长度eg. b.应用举例 c.在java中多个数组之间是可以相互赋值的。 eg. int []arr2 {1,2,3,4,5,6,7} int [] arr1arr2; 数组案例&#xff1a; 数组的初始化数组的访问数组的遍历 importjava.…

AIGC项目——Meta:根据对话音频生成带动作和手势的3d逼真数字人

From Audio to Photoreal Embodiment: Synthesizing Humans in Conversations From Audio to Photoreal Embodiment:Synthesizing Humans in Conversations 从二元对话的音频中&#xff0c;我们生成相应的逼真的面部、身体和手势。 概括性:角色是由作者的声音驱动的(而不是模…

SpringBoot 配置类解析

全局流程解析 配置类解析入口 postProcessBeanDefinitionRegistry逻辑 processConfigBeanDefinitions逻辑 执行逻辑解析 执行入口 ConfigurationClassPostProcessor.processConfigBeanDefinitions()方法中的do while循环体中 循环体逻辑 parse方法调用链 doProcessConfigurat…

STM32——看门狗

STM32——看门狗 1.独立看门狗IWDG 独立看门狗介绍 什么是看门狗&#xff1f; 在由单片机构成的微型计算机系统中&#xff0c;由于单片机的工作常常会受到来自外界电磁场的干扰&#xff0c;造成程序的跑飞&#xff0c;而陷入死循环&#xff0c;程序的正常运行被打断&#x…