【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;

【MySQL】学习并使用聚合函数和DQL进行分组查询_第1张图片


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

select avg (age) from emp;

【MySQL】学习并使用聚合函数和DQL进行分组查询_第2张图片


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

select max (age) from emp;

【MySQL】学习并使用聚合函数和DQL进行分组查询_第3张图片


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

select min (age) from emp;

【MySQL】学习并使用聚合函数和DQL进行分组查询_第4张图片


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

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

【MySQL】学习并使用聚合函数和DQL进行分组查询_第5张图片


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;

【MySQL】学习并使用聚合函数和DQL进行分组查询_第6张图片

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

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

【MySQL】学习并使用聚合函数和DQL进行分组查询_第7张图片

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

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

【MySQL】学习并使用聚合函数和DQL进行分组查询_第8张图片

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

你可能感兴趣的:(MySQL自学篇,mysql,学习,数据库,职场和发展,开发语言,科技)