Oracle 数据库基础学习 (四) group by的使用

  group by分组查询

 

示例:要求查询出每个部门的编号,人数,以及最高和最低工资 

select deptno, count(empno), max(sal), min(sal)
from emp
group by deptno;

 

 

限制1:在没有使用group by子句,select中不能够使用统计函数

正确代码

错误代码

select deptno,count(empno), max(sal),min(sal) from emp 

group by deptno

 

select deptno,count(empno), max(sal),min(sal) 

from emp

 

 

限制2:在使用group by子句,select只允许使用分组字段和统计函数,其他不允许出现

正确代码

错误代码

select deptno,count(empno) from emp

group by deptno

 

select deptno,ename,count(empno) from emp
group by deptno

 

  

 

限制3:统计函数允许嵌套,但是嵌套后的统计查询中,select子句不允许出现任何字段,包含分组字段,只能出现统计函数

正确代码

错误代码

select max(avg(sal)) from emp

group by deptno

 

select deptno,max(avg(sal)) from emp

group by deptno

 

posted on 2016-03-30 17:03  小猩  阅读(693)  评论(0编辑  收藏  举报

导航