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

举报
Aileen_0v0 发表于 2024/02/22 21:09:58 2024/02/22
【摘要】 🌈个人主页: Aileen_0v0🔥热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法​💫个人格言:"没有罗马,那就自己创造罗马~"account for 解释 SQL DQL-聚合函数 聚合函数:将一列数据作为一个整体,进行纵向计算。 常见的聚合函数函数功能count统计数量max最大值min最小值avg平均值sum求和注意:null值不参与所有聚合函数运算。 聚合函数...

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

account for 解释

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;

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。