设为首页 加入收藏

TOP

Oracle学习(4):分组函数(二)
2015-11-21 02:01:18 来源: 作者: 【 】 浏览:1
Tags:Oracle 学习 分组 函数


数据库优化问题

SQL> -- where和having均可使用时,尽量采用where! 因为where可以先对数据进行过滤然后分组,提高分组效率!
SQL> host cls

group by的增强

SQL> /*
SQL> group by的增强
SQL> group by deptno,job
SQL> +
SQL> group by deptno
SQL> +
SQL> group by null
SQL> =
SQL> group by rollup(deptno,job)

SQL>

SQL>
SQL> group by rollup(a,b)
SQL> =
SQL> group by a,b
SQL> +
SQL> group by a
SQL> +
SQL> group by null

SQL> */

SQL> select deptno,job,sum(sal)
2 from emp
3 group by rollup(deptno,job);


DEPTNO JOB SUM(SAL)
---------- --------- ----------
10 CLERK 1300
10 MANAGER 2450
10 PRESIDENT 5000
10 8750
20 CLERK 1900
20 ANALYST 6000
20 MANAGER 2975
20 10875
30 CLERK 950
30 MANAGER 2850
30 SALESMAN 5600
30 9400
29025


已选择13行。

设定格式

SQL> break on deptno skip 2
SQL> /


DEPTNO JOB SUM(SAL)
---------- --------- ----------
10 CLERK 1300
MANAGER 2450
PRESIDENT 5000
8750


20 CLERK 1900
ANALYST 6000
MANAGER 2975
10875


30 CLERK 950
MANAGER 2850
SALESMAN 5600
9400



DEPTNO JOB SUM(SAL)
---------- --------- ----------

29025




已选择13行。

取消格式

SQL> break on null
SQL> /


DEPTNO JOB SUM(SAL)
---------- --------- ----------
10 CLERK 1300
10 MANAGER 2450
10 PRESIDENT 5000
10 8750
20 CLERK 1900
20 ANALYST 6000
20 MANAGER 2975
20 10875
30 CLERK 950
30 MANAGER 2850
30 SALESMAN 5600
30 9400
29025


已选择13行。


SQL> spool off
首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇oracle分组查询 下一篇Oracle学习(1):基本语法

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: