欢迎来到天天文库
浏览记录
ID:48226244
大小:204.00 KB
页数:28页
时间:2020-01-18
《Les05-使用分组函数来对数据进行聚集.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、五.使用分组函数来对数据进行聚集目标完成本节课的学习后,应当完成下面的目标:识记常用的分组函数。描述分组函数的用处。使用GROUPBY子句对元组进行分组使用HAVING子句来筛选分组什么是分组函数?分组函数对一组数据行进行操作,并对每个组得出一个结果.EMP“EMP表中最大的SAL值”DEPTNOSAL------------------1024501050001013002080020110020300020300020297530160030285030125030950301500301250MAX(S
2、AL)---------5000分组函数的类型AVGCOUNTMAXMINSTDDEVSUMVARIANCE使用分组函数SELECT[column,]group_function(column)FROMtable[WHEREcondition][GROUPBYcolumn][ORDERBYcolumn];使用AVG和SUM函数AVG(SAL)MAX(SAL)MIN(SAL)SUM(SAL)-----------------------------------1400160012505600对于数字类型的数据,
3、可以使用AVG和SUM函数.SQL>SELECTAVG(sal),MAX(sal),2MIN(sal),SUM(sal)3FROMemp4WHEREjobLIKE'SALES%';使用MIN和MAX函数可以对许多类型的数据使用MIN和MAX函数.SQL>SELECTMIN(hiredate),MAX(hiredate)2FROMemp;MIN(HIREDMAX(HIRED------------------17-DEC-8012-JAN-83使用COUNT函数COUNT(*)---------6SQL>SEL
4、ECTCOUNT(*)2FROMemp3WHEREdeptno=30;COUNT(*)返回查询出的总行数.使用COUNT函数COUNT(expr)返回expr值非空的行的数.SQL>SELECTCOUNT(comm)2FROMemp3WHEREdeptno=30;COUNT(COMM)-----------4分组函数和空值分组函数忽略了行中所有的空行.SQL>SELECTAVG(comm)2FROMemp;AVG(COMM)---------550分组函数和NVL函数的结合NVL函数使得分组函数可以处理空值.
5、SQL>SELECTAVG(NVL(comm,0))2FROMemp;AVG(NVL(COMM,0))----------------157.14286创建聚组数据EMP“EMP表中每个部门的平均工资”2916.666721751566.6667DEPTNOSAL------------------1024501050001013002080020110020300020300020297530160030285030125030950301500301250DEPTNOAVG(SAL)-----------
6、-----102916.6667202175301566.6667创建分组数据:GROUPBY子句SELECTcolumn,group_function(column)FROMtable[WHEREcondition][GROUPBYgroup_by_expression][ORDERBYcolumn];将表中的数据行用GROUPBY语句分为几个组.使用GROUPBY子句在SELECT语句中,没有使用分组函数的列必须在GROUPBy子句中.SQL>SELECTdeptno,AVG(sal)2FROMemp3G
7、ROUPBYdeptno;DEPTNOAVG(SAL)------------------102916.6667202175301566.6667使用GROUPBY子句GROUPBY后面的列可以不出现在SELECT链中.SQL>SELECTAVG(sal)2FROMemp3GROUPBYdeptno;AVG(SAL)---------2916.666721751566.6667根据多个列进行分组EMP“每个部门中,每种工作的工资总和”DEPTNOJOBSAL--------------------------
8、-10MANAGER245010PRESIDENT500010CLERK130020CLERK80020CLERK110020ANALYST300020ANALYST300020MANAGER297530SALESMAN160030MANAGER285030SALESMAN125030CLERK95030SALESMAN150030SALESMAN1250JOBSUM(SAL)-----------
此文档下载收益归作者所有