前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >【MySQL】学习并使用聚合函数和DQL进行分组查询

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

作者头像
ImAileen
发布2024-02-01 08:30:30
发布2024-02-01 08:30:30
23000
代码可运行
举报
运行总次数:0
代码可运行

SQL

DQL-聚合函数

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


常见的聚合函数

函数

功能

count

统计数量

max

最大值

min

最小值

avg

平均值

sum

求和

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


聚合函数使用语法

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


聚合函数Exercises

1.统计该企业员工数量

代码语言:javascript
代码运行次数:0
复制
select  count( * )from emp;

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

代码语言:javascript
代码运行次数:0
复制
select avg (age) from emp;

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

代码语言:javascript
代码运行次数:0
复制
select max (age) from emp;

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

代码语言:javascript
代码运行次数:0
复制
select min (age) from emp;

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

代码语言:javascript
代码运行次数:0
复制
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.根据性别分组,统计男性员工和女性员工的数量

代码语言:javascript
代码运行次数:0
复制
select gender ,  count(*) from emp group by  GENDER;

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

代码语言:javascript
代码运行次数:0
复制
select gender , avg(age) from emp group by gender;

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

代码语言:javascript
代码运行次数:0
复制
select WORKADDRESS,  count(*)  from  emp where AGE<45 group by WORKADDRESS having count(*) >= 3;
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-01-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • DQL-聚合函数
  • 常见的聚合函数
  • 聚合函数使用语法
  • 聚合函数Exercises
    • 1.统计该企业员工数量
    • 2.统计该企业员工的平均年龄
    • 3.统计该企业员工的最大年龄
    • 4.统计该企业员工的最小年龄
    • 5.统计西安地区员工的年龄之和
  • DQL-分组查询
    • 分组查询的语法
  • Exercises
    • 1.根据性别分组,统计男性员工和女性员工的数量
    • 2.根据性别分组,统计男性员工 和 女性员工的平均年龄
    • 3. 查询年龄小于45的员工,并根据工作地址分组,获取员工数量大于等于三的工作地址
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档