Oracle多行查询(函数)
多行函数可以认为是操作多行数据的函数
关于单行函数:单行查询整理
1 取数据总和 2 SQL> select sum(sal) from emp; 3 取行数总和 4 SQL> select count(*) from emp; 5 取平均值 6 SQL> select sum(sal)/count(*) 一,avg(sal) 二 from emp; 7 8 9 SQL> --null 值 5. 组函数(多行函数)自动滤空; 10 SQL> select count(*),count(comm) from emp; 11 COUNT(*) COUNT(COMM) 12 ---------- ----------- 13 14 4 14 SQL> --嵌套滤空函数来屏蔽他的滤空功能 15 SQL> select count(*),count(nvl(comm,0)) from emp; 16 COUNT(*) COUNT(NVL(COMM,0)) 17 ---------- ------------------ 18 14 14 19 20 SQL> --多个列的分组 21 SQL> --group by :先按照第一个列分组;再按照第二列分组,以此类推 22 SQL> select deptno,job,sum(sal) 23 2 from emp 24 3 group by deptno,job 25 4 order by 1; 26 27 SQL> --where和having的区别:where后面不能使用多行函数 28 SQL> --求10号部门的平均工资 29 SQL> select deptno,avg(sal) 30 2 from emp 31 3 group by deptno 32 4 having deptno=10; 33 34 DEPTNO AVG(SAL) 35 ---------- ---------- 36 10 2916.66667 37 38 SQL> group by的增强 39 select deptno,job,sum(sal) from emp group by rollup(deptno,job);
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出,
原文链接
如有问题, 可邮件(zxy.hope@gmail.com)咨询.