Oracle SQL分组函数

组函数类型:
操作符 含义
Avg 平均值
Count 计数
Max 最大值
Min 最小值
Sum 合计

操作符含义
Avg平均值
Count计数
Max最大值
Min最小值
Sum合计

在select 列表中所有未包含在组函数中的列都应该包含在group by子句中
一、Avg:求平均值
Select avg(salary) from emp
在这里插入图片描述
二、Count:计数
Select count(employee_id) from emp
在这里插入图片描述
三、Sum:合计
Select sum(salary) from emp
在这里插入图片描述
四、Max:最大值
Select max(salary) from emp
在这里插入图片描述
五、Min:最小值
Select min(salary) from emp
在这里插入图片描述
六、还可以(+)(-)运算:
Select max(salary)-min(salary) from emp
在这里插入图片描述
Select min(salary)-min(salary) from emp
在这里插入图片描述
七、()(/)运算
平均值
count=求和
Select sum(salary),count(salary),sum(salary)/count(salary) from emp
在这里插入图片描述
八、Group by 子句:
有分组函数时,要用group bu子句。否则会报错(Group by 子句不能与where子句一起使用,它一般与having子句一起使用。Where子句不能与分组函数使用,where子句放在from后面,group by前面。Having与where一样,都是过滤,having放在group by后面)
例如:错误的写法
①select未包含的组函数要放在group by 里
在这里插入图片描述
②where子句不能放分组函数
Select depart_id,avg(salary) from emp where avg(salary)>8000 group by depart_id
在这里插入图片描述
正确的写法:
①group by放未包含的组函数
Select depar_id,avg(salaey) from emp group by depar_id
在这里插入图片描述
②having子句可以放组函数
Select depart_id,avg(salary) from emp group by depart_id having avg(salary)>8000
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值