group by... having

上一篇 / 下一篇  2013-12-18 16:25:10 / 个人分类:数据库

1.以用GROUP By来实现对一组数进行分组统计(如SUM,count(*)等),如:

 

要列出部门代码、部门人数,部门工资总和,则用到GROUP BY

 

SQL> select deptno,count(*) ,sum(sal) from emp group by deptno;

 


2.在分组GROUP BY中,一般都不管统计的结果是多少都要全显示,我们可以在GROUP BY前或后加HAVING子句来限制结果的统计,比如要求被统计的人数有5个人以上,则有两方法可以实现:

 

SQL> select deptno,count(*) ,sum(sal) from emp group by deptno

 having count(*)>=5;

或者

select deptno,count(*) ,sum(sal) from emp having count(*)>=5 group by deptno

没有包含聚合函数的,having 条件要放在group by 后面


聚合函数指:

  

 



 

 

 


TAG:

 

评分:0

我来说两句

Open Toolbar