1、如果是ROLLUP(A, B, C)的话,首先会对(A、B、C)进行GROUP BY,然后对(A、B)进行GROUP BY,然后是(A)进行GROUP BY,最后对全表进行GROUP BY操作。

2、如果是GROUP BY CUBE(A, B, C),则首先会对(A、B、C)进行GROUP BY,然后依次是(A、B),(A、C),(A),(B、C),(B),(C),最后对全表进行GROUP BY操作。

举例:SQL> select grouping(index_type) g_ind,grouping(status) g_st,index_type,status,count(*) from t group by rollup(index_type,status) order by 1,2;

G_IND G_ST INDEX_TYPE STATUS COUNT(*)
---------- ---------- --------------------------- -------- ----------
0 0 LOB N/A 1
0 0 LOB VALID 587
0 0 FUNCTION-BASED NORMAL VALID 16
0 0 FUNCTION-BASED DOMAIN VALID 1
0 0 IOT - TOP VALID 103
0 0 CLUSTER VALID 10
0 0 NORMAL VALID 3171
0 0 NORMAL N/A 94
0 0 BITMAP VALID 1
0 1 FUNCTION-BASED NORMAL 16
0 1 NORMAL 3265
0 1 IOT - TOP 103
0 1 FUNCTION-BASED DOMAIN 1
0 1 BITMAP 1
0 1 CLUSTER 10
0 1 LOB 588
1 1 3984

17 rows selected

SQL> select grouping(index_type) g_ind,grouping(status) g_st,index_type,status,count(*) from t group by cube(index_type,status) order by 1,2;

G_IND G_ST INDEX_TYPE STATUS COUNT(*)
---------- ---------- --------------------------- -------- ----------
0 0 LOB N/A 1
0 0 CLUSTER VALID 10
0 0 FUNCTION-BASED NORMAL VALID 16
0 0 NORMAL VALID 3171
0 0 IOT - TOP VALID 103
0 0 LOB VALID 587
0 0 FUNCTION-BASED DOMAIN VALID 1
0 0 BITMAP VALID 1
0 0 NORMAL N/A 94
0 1 IOT - TOP 103
0 1 CLUSTER 10
0 1 NORMAL 3265
0 1 BITMAP 1
0 1 LOB 588
0 1 FUNCTION-BASED NORMAL 16
0 1 FUNCTION-BASED DOMAIN 1
1 0 N/A 95
1 0 VALID 3889
1 1 3984

19 rows selected

http://blog.csdn.net/ghostgant/article/details/5699731

转载于:https://www.cnblogs.com/51linux/archive/2013/05/08/3066822.html

group by rollup | cube 学习相关推荐

  1. oracle cube排序,Oracle rollup cube 用法

    1.Oracle ROLLUP和CUBE 用法 Oracle的GROUP BY语句除了最基本的语法外,还支持ROLLUP和CUBE语句. 如果是Group by  ROLLUP(A, B, C)的话, ...

  2. [转]详解Oracle高级分组函数(ROLLUP, CUBE, GROUPING SETS)

    原文地址:http://blog.csdn.net/u014558001/article/details/42387929 本文主要讲解 ROLLUP, CUBE, GROUPING SETS的主要用 ...

  3. ORACLE ROLLUP CUBE

    Oracle的GROUP BY语句除了最基本的语法外,还支持ROLLUP和CUBE语句.如果是ROLLUP(A, B, C)的话,首先会对(A.B.C)进行GROUP BY,然后对(A.B)进行GRO ...

  4. 分析函数——rollup,cube,rank,partition by

    记录开始前,先看看测试表的表结构吧 该表字段由上而下分别代表月份,行区,区县,套餐和收入. 根据该表完成以下练习: 1.汇总出一个各行区和全市的收入报表: a).仅按行区分组: 1 select de ...

  5. group by rollup 和grouping的使用实例

    GROUPING函数可以接受一列,返回0或者1.如果列值为空,那么GROUPING()返回1:如果列值非空,那么返回0.GROUPING只能在使用ROLLUP或CUBE的查询中使用.当需要在返回空值的 ...

  6. group by rollup

    首先引用ITPUB上的总结: rollup(a,b,c)----------------> 从右到底递减汇总 ====>group by a,b,c   (减0次) UNION ALL = ...

  7. group by with cube

    sqlserver group by with cube CUBE运算符生成的结果集是多维数据集,多维数据集是事实数据的扩展,事实数据即记录个别时间的数据,扩展建立在用户准备分析的列上,这些列被称为维 ...

  8. oracle按层级分组,oracle按照指定列分组合计group by rollup()

    group by rollup() 按分组合计 select grouping(status),status,owner,object_type,count(*) from dba_objects w ...

  9. Oracle 聚合实现小计、合计 (GROUP BY ROLLUP)

    1.先创建一个测试表 -- Create table 水果月销售记录表 create table C_FRUITS_SALES_RECORD_T (quarter VARCHAR2(20),--季度m ...

最新文章

  1. AI一分钟|特斯拉前员工爆料:部分汽车使用电池缺陷;小鹏汽车计划2019年底前融资300亿元...
  2. 为什么Redis内存不宜过大
  3. c# 自定义文件关联程序
  4. Ubuntu 16.04开机自动开启数字键盘NumLock
  5. webapi中的模型验证
  6. java webservice接口开发_给Java新手的一些建议----Java知识点归纳(J2EE and Web 部分)
  7. ospf实验及原理(ensp)
  8. 算法题008 快速找出故障机器
  9. Confluence与Jira安装及后期迁移问题记录
  10. Ubuntu上安装OpenGL
  11. 【React Native开发】React Native控件之RefreshControl组件具体解释(21)
  12. 网店宝贝复制专家操作手册
  13. 新手入门 | 算法书籍推荐
  14. openCV python 颜色识别
  15. 计算机做课程表教程,初学表格制作教程 初学者如何制作课程表
  16. python 压缩算法_lzma — 用 LZMA 算法压缩
  17. 单片机作业1_为OLED制作汉字字库_第3部分
  18. 【微信转账—设置付款时间问题】
  19. Paper Reading - 基础系列 - 常用评价指标 ROC、PR、mAP
  20. 1665 完成所有任务的最少初始能量

热门文章

  1. Android开发笔记(九十)建造者模式
  2. 分析图第四讲5.29
  3. Downloading SRA data using command line utilities
  4. 网站建设对于哪些刚起步的企业是有必要的
  5. 移植性问题のLPTSTR、LPCSTR、LPCTSTR、LPSTR之间的转换 转
  6. 话里话外:80后,那人生初始最关键的一步
  7. android intent铃声选择,Android 设置系统铃声和系统音量
  8. 指纹识别 python_Python实现指纹识别你见过没?
  9. 根据可信计算机系统评估准则 用户,根据可信计算机系统评估准则(TESEC),用户能定义访问控制要求的自.._简答题试题答案...
  10. asp.net 两个控件放一行_思维导图?试试这两个宝藏网站吧