mysql分组函数

分组函数(多行处理函数)

多行处理函数的特点:输入多行,最终输出一行。

函数

描述

count

计数

sum

求和

avg

平均值

max

最大值

min

最小值

注意:

分组函数在使用的时候必须先进行分组,然后才能用。

如果你没有对数据进行分组,整张表默认为一组。

找出最高工资?

select max(sal) from emp;

找出最低工资?

select min(sal) from emp;

计算工资和:

select sum(sal) from emp;

计算平均工资:

select avg(sal) from emp;

14个工资全部加起来,然后除以14。

计算员工数量?

select count(ename) from emp;

分组函数在使用的时候需要注意哪些?

🍉第一点:分组函数自动忽略NULL,你不需要提前对NULL进行处理。

select sum(comm) from emp;

select count(comm) from emp;

select avg(comm) from emp;

🍉第二点:分组函数中count(*)和count(具体字段)有什么区别?

select count(*) from emp;

select count(comm) from emp;

count(具体字段):表示统计该字段下所有不为NULL的元素的总数。

count(*):统计表当中的总行数。(只要有一行数据count则++)

因为每一行记录不可能都为NULL,一行数据中有一列不为NULL,则这行数据就是有效的。

🍉第三点:分组函数不能够直接使用在where子句中。

select ename,sal from emp where sal > min(sal); 表面上没问题,运行一下?

ERROR 1111 (HY000): Invalid use of group function //报错

?????????????????????????????????????????????????????????????????????

说完分组查询(group by)之后就明白了了。

🍉第四点:所有的分组函数可以组合起来一起用。

select sum(sal),min(sal),max(sal),avg(sal),count(*) from emp;


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值