ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 分组函数

分组函数

原创 Linux操作系统 作者:oralau 时间:2009-05-09 22:13:43 0 删除 编辑

常用的分组函数有
count
max
min
avg(nvl)xxx,0))  求平均值要写成这样,否则会忽略null字段
sum
stddev 标准差
variance 方差

平均工资大于2000的部门
select d.deptno,max(d.dname),avg(nvl(e.sal,0)) from  emp e,dept d  where e.deptno=d.deptno  group by d.deptno having avg(nvl(e.sal,0))>2000;

注意:被选者column只能分组column(deptno)或者是主函数,如果分组column和其他column具有一对一的关系时,可用max()或min()主函数
骗过系统得以显示。having后面必须是组函数。

部门最低的平均工资

select min(avg(nvl(sal,0))) from emp group by deptno;

注意:如果组函数超过两重,就不可以有其他column被选择啦。

各部门各工种的平均工资

select max(d.dname),e.job,avg(nvl(e.sal,0)) from emp e,dept d where e.deptno=d.deptno group by  e.job,d.deptno order by d.deptno;

注意经过连接和where条件过滤后,相当于对一张新表进行分组操作,分组的标准是部门和工种。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/20844861/viewspace-594625/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 子查询
下一篇: 集合操作
请登录后发表评论 登录
全部评论

注册时间:2009-02-17

  • 博文量
    38
  • 访问量
    36515