五、sql基础:group by分组--【Oracle数据库】

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_29668759/article/details/79965505

####五、分组计算函数和group by子句
#####1.分组计算函数
分组计算函数,相对于单行函数,也可以称之为多行函数,它的输入是多个行构成的一个行集(这个行集可以使一张表的所有行,也可以是按照某个维度进行分组后的某一组行),而输出都是一个值。


#####2.分组计算函数(常用)
求和 sum
求平均值 avg
计数 count
求最大值 max
求最小值 min


#####3.分组计算函数实战
计算job_id中包含‘REP’的人的薪水的总和、平均值、数量、最大值、最小值
这里写图片描述


#####4.计数函数:count
count() 返回满足选择条件的所有行数,包括值为空的行和重复的行
count(列名) 返回那一列中不为空的行数
count(distinct 列名) 返回那一列中不为空、不重复的行数
count(
)和count(1)的结果是一样的


#####5.group by 分组
######5.1根据一个字段进行分组
实战:按照 部门department_id 分组,计算平均薪水:
这里写图片描述

######5.2根据多个字段进行分组
实战:按照 部门department_id 、job_id分组,计算平均薪水:
这里写图片描述


#####6.Having
当我已经按照5.1的方式查出部门的平均薪资,我想继续查平均薪资大于5000的部门,此时如果把avg(salary)>5000写在where子句中是不对的,应该把where换成having
这里写图片描述


#####7.分组函数嵌套使用
按照5.1查出部门平均薪资,查看平均薪资的最大值
这里写图片描述

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试