oracle分组 rollup,Cube
CUBE 和 ROLLUP 之间的区别在于:
CUBE 生成的结果集显示了所选列中值的所有组合的聚合。
ROLLUP 生成的结果集显示了所选列中值的某一层次结构的聚合。
Oracle的GROUP BY语句除了最基本的语法外,还支持ROLLUP和CUBE语句。如果是ROLLUP(A, B, C)的话,首先分成两大步:(1)对于符合条件的每个A,先对(A、B、C)进行GROUP BY,然后对(A、B)进行GROUP BY,然后是(A)进行GROUP BY;(2)对全表进行GROUP BY操作。
按CB,GDM,CZJM统计
SELECT CB,GDM,CZJM,COUNT(*)
from LTJ_DDC
GROUP BY ROLLUP(CB,GDM,CZJM)
如果是GROUP BY CUBE(A, B, C),(1)先对全表进行统计;(2)则首先对(C)进行GROUP BY;(3)然后依次是对于每一个B,先统计B,再统计(B,C);(4)对每个A,按(A)、(A,C)、(A,B)、(A,B,C)进行检索。实例如下:
SELECT CB,GDM,CZJM,COUNT(*)
from LTJ_DDC
GROUP BY CUBE(CB,GDM,CZJM)
相关文档:
在windows 下配置PHP使用ORACLE数据库要点
在window下,经常用apache + PHP 来做应用平台,但是如果使用oracle做后台数据库,但又没有安装有oracle客户端,下面的配置可以参考
1、在没有安装oracle的机器上,PHP无法加载php_oci8.dll模块,原因是php_oci8.dll依赖的相关组件没有找到。
你正确设置了 ......
insert into dts_auction_comments (id,auction_id,user_id,user_nick,comments,gmt_create,gmt_modified,status,comm_type)
values(409,127380, ......
1. 将数据库完全导出
用户名system 密码system 导出到Oracle用户目录下的testdb20100522.dmp文件中
#exp system/system@testdb file=testdb20100522.dmp full=y
2. 将数据库中system用户与sys用户的表导出
#exp system/system@testdb file= testdb20100522.d ......
一个使用ibatis对数据库增删改查的例子:
这里用的开发环境是:Eclipse3.2+mysql5.0.20,ibatis包是ibatis-common-2.jar,
ibatis-dao-2.jar,ibatis-sqlmap-2.jar,mysql包是mysql-connector-java-5.0.3-bin.jar.
步骤:
1.创建数据库:
create database itcast;
use itcast;
创建表:
create table stu ......