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