日期:2014-05-16 浏览次数:22683 次
最近这段时间一直在看SQL Server视频,虽然了解了SQL Server运行环境、语言基础和设计基础,但还没有真正的转化为自己的知识。一方面,是刚接触数据库,另一方面,就是自己只是看视频、记笔记,没有去思考和总结。下面是我对group by字句中with cube和with rollup的总结:
当需要对数据库数据进行分类统计的时候,往往会用上group by进行分组。而在group by后面还可以加入with cube和with rollup等关键字对数据进行汇总。那什么时候用with cube?什么时候用with rollup呢?
一、两者的区别    
 CUBE   生成的结果集显示了所选列中值的所有组合的聚合。 
 ROLLUP   生成的结果集显示了所选列中值的某一层次结构的聚合。
二、两者的用法(实例说明)
CUBE:除了返回GROUP BY子句指定的列外,还返回按组统计的行。返回的结果先按分组的第一个条件排序显示,再按第二个条件列排序显示,以此类推。统计行包括了GROUP BY 子句指定的列的各种组合的数据统计
Select 所属部门,性别,AVG(年龄) FROM 导师表 Group by 所属部门,性别 With cube
| 
 所属部门  | 
 性别  | 
 年龄  | 
| 
 纪律部  | 
 男  | 
 24  | 
| 
 纪律部  | 
 女  | 
 22  | 
| 
 纪律部  | 
 null  | 
 23纪律部成员的平均年龄  | 
| 
 学习部  | 
                        
                    
                    
                     
                        免责声明: 本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
                     
                    
                
                
            
            
            
    
        
   
 |