当前位置:  数据库>oracle

Oracle命令 ROLLUP

    来源: 互联网  发布时间:2017-04-28

    本文导语: 重温SQL基本命令时,发现GROUP BY ROLLUP() 这个命令有所生疏,于是自己琢磨了下,写下来。 先通览下整个表:EMP SQL> SELECT * FROM EMP ; --查询结果: EMPNO ENAME      JOB         MGR HIREDATE          SAL DEPTNO   ----- ---------...

重温SQL基本命令时,发现GROUP BY ROLLUP() 这个命令有所生疏,于是自己琢磨了下,写下来。

先通览下整个表:EMP

SQL> SELECT * FROM EMP ;

--查询结果:

  • EMPNO ENAME      JOB         MGR HIREDATE          SAL DEPTNO  
  • ----- ---------- --------- ----- ----------- --------- ------  
  •  7369 SMITH      CLERK      7902 1980/12/17     800.00     20  
  •  7499 ALLEN      SALESMAN   7698 1981/2/20     1600.00     30  
  •  7521 WARD       SALESMAN   7698 1981/2/22     1250.00     30  
  •  7566 JONES      MANAGER    7839 1981/4/2      2975.00     20  
  •  7654 MARTIN     SALESMAN   7698 1981/9/28     1250.00     30  
  •  7698 BLAKE      MANAGER    7839 1981/5/1      2850.00     30  
  •  7782 CLARK      MANAGER    7839 1981/6/9      2450.00     10  
  •  7788 SCOTT      ANALYST    7566 1987/4/19     3000.00     20  
  •  7839 KING       PRESIDENT       1981/11/17    5000.00     10  
  •  7844 TURNER     SALESMAN   7698 1981/9/8      1500.00     30  
  •  7876 ADAMS      CLERK      7788 1987/5/23     1100.00     20  
  •  7900 JAMES      CLERK      7698 1981/12/3      950.00     30  
  •  7902 FORD       ANALYST    7566 1981/12/3     3000.00     20  
  •  7934 MILLER     CLERK      7782 1982/1/23     1300.00     10  
  • 在对字段 JOB, SAL, DEPTNO 进行分组小计前,先进性分组排序,以便和小计做对比。  做这一步前,先讲下GROUP BY ROOLUP命令的基本用法:在完成了数据基本分组之后,根据分组字段列表(注释:也就是GROUP BY后面的字段,比如GROUP BY JOB , DEPTNO,那么分组字段就是JOB,DEPTNO。 以此类推,但进性分组小计时:GROUP BY ROLLUP(JOB, DEPTNO ); 那么分组字段依旧是JOB, DEPTNO ),

    按照从右向左的顺序,每次去掉最后一个字段 (注释:每次去掉字段列表的最后一个字段是什么意思呢?比如:GROUP BY ROLLUP(EMPNO, ENAME,JOB, SAL,DEPTNO );

    那么这次分组小计将根据字段列表的字段个数分5步进行:

    1.GROUP BY EMPNO, ENAME,JOB, SAL,DEPTNO;第一次分组。

    2.GROUP BY EMPNO, ENAME,JOB, SAL;第二次分组。(去掉最后一个字段DEPTNO,  后的汇总)

    3.GROUP BY EMPNO, ENAME,JOB;第三次分组。(去掉最后一个字段SAL, 后的汇总)

    4.GROUP BY EMPNO, ENAME;第四次分组。(去掉最后一个字段JOB, 后的汇总)

    5.4.GROUP BY EMPNO;第五次分组。(去掉最后一个字段ENAME ,后的汇总)

    下面先来看根据JOB(职业)分组,来计算每一类职业的平均薪水:

  • SQL>  SELECT JOB,  AVG(SAL) FROM EMP GROUP BY JOB ORDER BY JOB;  
  •    
  • JOB         AVG(SAL)  
  • --------- ----------  
  • ANALYST         3000  
  • CLERK         1037.5  
  • MANAGER   2758.33333  
  • PRESIDENT       5000  
  • SALESMAN        1400  

  •     
     
     

    您可能感兴趣的文章:

  • linux下安装oracle后使用命令行启动的方法 linux启动oracle
  • Oracle 10G for Linux常用命令
  • Linux 下 Oracle 命令学习笔记
  • linux as3 安装oracle10g ,web端能访问,终端用命令不能进入
  • 请问,在unix下,关闭oracle数据库和重起unix,的正确顺序和命令应该是怎样的!请教!
  • Linux下命令行启动oracle时报错的解决
  • Linux下启动Oracle database EM及isqlplus等命令
  • oracle for linux 下面的sqlca.sqlcode是一个什么命令去查?
  • 查看Oracle的执行计划一句话命令
  • Oracle中备份表的简单sql命令语句
  • Oracle 10g各个帐号的访问权限、登录路径、监控状态命令查询等等
  • 要装oracle,设置好环境变量。之后就啥命令也用不了了
  • Oracle如何直接运行OS命令(上)第1/2页
  • UNIX服务器上使用“kill"命令终止"Oracle”过程
  • oracle命令行删除与创建用户的代码
  • 剖析用UNIX的kill命令终止Oracle详细过程
  • 用UNIX的kill命令来终止所有的Oracle过程
  • 学习登录oracle数据库时常用的操作命令
  • ubuntu如何用apt-get命令安装Oracle的vituralBox呢?
  • oracle创建删除用户示例分享(oracle删除用户命令及授权)
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle 数据库开发工具 Oracle SQL Developer
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • Oracle EBS R12 支持 Oracle Database 11g
  • Oracle 10g和Oracle 11g网格技术介绍
  • SCO unix下安装oracle,但没有光盘,请大家推荐一个oracle下载站点(unix版本的)。谢谢!!!!
  • oracle中如何把表中具有相同值列的多行数据合并成一行
  • 请问大家用oracle数据库, 用import oracle.*;下的东西么? 还是用标准库?
  • Oracle 数据库(oracle Database)性能调优技术详解
  • Linux /$ORACLE_HOME $ORACLE_HOME
  • ORACLE日期相关操作
  • Linux系统下Oracle的启动与Oracle监听的启动
  • ORACLE数据库常用字段数据类型介绍
  • 请问在solaris下安装ORACLE,用root用户和用oracle用户安装有什么区别么?
  • Oracle 12c的九大最新技术特性介绍
  • 网间Oracle的连接,远程连接Oracle服务器??


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,