sql server的cube操作符使用详解
来源:互联网 发布:淘宝助理描述源码 编辑:程序博客网 时间:2024/05/17 23:00
sql server的cube操作符使用详解
cube操作符
要使用cube,首先要了解group by
其实cube和rollup区别不太大,只是在基于group by 子句创建和汇总分组的可能的组合上有一定差别,
cube将返回的更多的可能组合。如果在 group by 子句中有n个列或者是有n个表达式的话,
sqlserver在结果集上会返回2的n-1次幂个可能组合。
注意:
使用cube操作符时,最多可以有10个分组表达式
在cube中不能使用all关键字
例子:
我们在数据库统计中常常要查询以下情况:
如一个定单数据库,我们要知道每个定单的每个产品数量,每个定单的所有产品数量,所有定单的某一产品数量,所有定单所有产品总量这些汇总信息。这时使用cube就十分方便了。当然不需要这么多信息或者只想知道某一具体产品、具体某一定单,某一时间关系(前,后,之间)等等具体信息的话,只需在where中限定即可
先举一个例子,是所有情况的:
一个数据库表中记载了一个产品定购情况:
现共有三种产品(1,2,3),已经下了两个定单(1,2)
sql语句:
select productid,orderid SUM(quantity) AS total FROM order GROUP BY productid,orderid WITH CUBE
ORDER BY productid,orderid
运行后得到结果:
productid orderid total
null null 95 所有定单所有产品总量
null 1 30 定单1所有产品数量
null 2 65 定单2所有产品数量
1 null 15 所有定单产品1总量
1 1 5 定单1产品1数量
1 2 10 定单2产品1数量
2 null 35 所有定单产品2总量
2 1 10 定单1产品2数量
2 2 25 定单2产品2数量
3 null 45 所有定单产品3总量
3 1 15 定单1产品3数量
3 2 30 定单2产品3数量
如果您对sqlserver group by 聚集有一定理解的话,您就可以理解cube操作符的用法和作用。其实在现实运用中cube还是很好有的,我们经常要对一些数据库数据进行统计,以利于我们更好的掌握情况
- ms sql server的cube操作符使用详解
- sql server的cube操作符使用详解
- sql server的cube操作符使用详解[转]
- sql server的cube操作符使用详解
- sql server 使用CUBE实现合计
- sql server的cube如何入门
- SQL CUBE、ROLLUP 、COMPUTE 使用详解
- pentaho 示例Cube配置详解(SQL Server版本)
- SQL Server中汇总功能的使用GROUPING,ROLLUP和CUBE
- SQL Server中汇总功能的使用GROUPING,ROLLUP和CUBE
- SQL Server中汇总功能的使用GROUPING,ROLLUP和CUBE
- SQL Server汇总使用GROUPING,ROLLUP和CUBE
- SQL Server关于WITH CUBE、WITH ROLLUP和GROUPING使用
- SQL SERVER中union,cube,rollup,cumpute运算符
- SQL SERVER中的union,cube,rollup和cumpute运算符
- SQL SERVER中的union,cube,rollup和cumpute运算符
- 使用SQL Trace来实现SQL Server的跟踪操作
- SQL Server 数据库操作总结(sql语法的使用)
- 简单
- 一吻一世界的故事
- xDoclet & JSF
- ADF Faces & MyFaces Tiles Support
- 那时的我们·心也简单·诗也简单......
- sql server的cube操作符使用详解
- 孤独生命的补白
- 未公布的访问注册表的扩展存储过程
- 斐特列大帝和骡子
- SQL Server SA权限总结经典技术
- 毕业后2年男生的感慨
- JavaScript 的学习记录。
- 要勤奋,
- 轻松、自然的心态才是正常的心态!