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

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

作者头像
用户10920432
发布2024-02-01 08:30:30
1620
发布2024-02-01 08:30:30
举报

SQL

DQL-聚合函数

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


常见的聚合函数

函数

功能

count

统计数量

max

最大值

min

最小值

avg

平均值

sum

求和

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


聚合函数使用语法

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


聚合函数Exercises

1.统计该企业员工数量

代码语言:javascript
复制
select  count( * )from emp;
在这里插入图片描述
在这里插入图片描述

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

代码语言:javascript
复制
select avg (age) from emp;
在这里插入图片描述
在这里插入图片描述

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

代码语言:javascript
复制
select max (age) from emp;
在这里插入图片描述
在这里插入图片描述

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

代码语言:javascript
复制
select min (age) from emp;
在这里插入图片描述
在这里插入图片描述

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

代码语言:javascript
复制
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
复制
select gender ,  count(*) from emp group by  GENDER;
在这里插入图片描述
在这里插入图片描述

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

代码语言:javascript
复制
select gender , avg(age) from emp group by gender;
在这里插入图片描述
在这里插入图片描述

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

代码语言:javascript
复制
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的员工,并根据工作地址分组,获取员工数量大于等于三的工作地址
                    相关产品与服务
                    云数据库 MySQL
                    腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
                    领券
                    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档