千家信息网

Oracle高级分组

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,/******************Oracle 高级分组*****************************//*-----------------auther:similarface---
千家信息网最后更新 2026年11月01日Oracle高级分组

/******************Oracle 高级分组*****************************/

/*-----------------auther:similarface-----------------------*/

/*--------------------2015年2月4日----------------------------*/

--oracle中GROUP BY中使用的列必须与select语句中没有使用聚合函数的列相匹配

/* Formatted on 2015/2/4 15:42:12(QP5 v5.256.13226.35538) */

SELECTd.dname,COUNT(e.empno)

FROMdeptd,empe

WHEREe.deptno(+)=D.DEPTNO

GROUPBYD.DNAME;

/* Formatted on 2015/2/4 15:47:45(QP5 v5.256.13226.35538) */

SELECTd.dname,COUNT(E.EMPNO)

FROMdeptd LEFTOUTERJOINempeONE.DEPTNO=D.DEPTNO

GROUPBYd.dname;

--GROUP BY 所产生的结果可以通过HAVING子句中所给出的筛选标准来进行限制

--需求:从有雇员以来的第一个完整年开始所有至少雇佣了5名员工的部门

/* Formatted on 2015/2/4 16:22:11(QP5 v5.256.13226.35538) */

SELECT D.DNAME,TRUNC(e.hiredate,'yyyy'),COUNT(e.empno)

FROMdeptd,empe

WHERE D.DEPTNO=E.DEPTNO

GROUPBYD.DNAME,TRUNC(e.hiredate,'yyyy')

HAVING COUNT(e.empno)>5

ANDTRUNC(e.hiredate,'yyyy')BETWEEN(SELECTMIN(hiredate)

FROMemp)

AND(SELECTMAX(hiredate)

FROMemp);

--CUBE将会使得对每一行都要考虑包含CUBE参数中所有可能的元素组合

CREATETABLEtestCube

(

num1 NUMBER,

num2 NUMBER

);

INSERTINTOtestCube

VALUES(1,2);

COMMIT;

SELECT*

FROMtestCube

GROUPBYCUBE(num1,num2);

--GROUPING可以排除cube生成的空值

SELECTDECODE(GROUPING(num1),1,'NUM1',num1),

DECODE(GROUPING(num2),1,'NUM2',num2)

FROMtestCube

GROUPBYCUBE(num1,num2);

--GROUPING_ID确定其参数中的哪一行被用来生成超聚合行,然后创建一个位矢量以数值返回

WITH testGroupid AS(SELECT1 bit_1,0 bit_0 FROM DUAL),

cubed

AS( SELECTGROUPING_ID(bit_1,bit_0) gid,

TO_CHAR(GROUPING(bit_1))bv_1,

TO_CHAR(GROUPING(bit_0))bv_0,

DECODE(GROUPING(bit_1),1,'GRP BIT1') gb_1,

DECODE(GROUPING(bit_0),1,'GRP BIT0') gb_0

FROMtestGroupid

GROUPBYCUBE(bit_1,bit_0))

SELECTgid,

bv_1||bv_0 bit_vector,

gb_1,

gb_0

FROMcubed

ORDERBYgid;

GROUP BY 局限性

1、LOB列,嵌套表和数组不能使用GROUPBY

2、标量子查询表达式不允许

3、GROUP BY引用对象类型列不能并行化


一行 参数 生成 高级 分组 个位 元素 函数 可以通过 员工 子句 对象 局限性 数值 数组 整年 标准 矢量 类型 结果 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 咖啡网 小米移动互联网科技园 保险科技 互联网保险 美国互联网科技 无线互联网科技 居家互联网科技有限公司 新华互联网科技校企合作 中国最先进互联网科技公司 上海电发互联网科技有限公司 成都玖崟互联网科技有限公司乐商圈怎么样 新华互联网科技2019 字节跳动和互联网科技 互联网企业和科技型企业 燊美集互联网科技有限公司 佛山市翊博互联网络科技有限公司 广州千川互联网科技有限公司 本届互联网大会上的黑科技 互联网科技平台产品运营 湖北辰鑫科技互联网 武汉亿视互联网科技有限公司 互联网科技有限公司经营范围 麻工互联网科技 互联网 科技 深圳艾佳互联网科技 中国最先进互联网科技公司 互联网科技博主是什么意思 互联网公司科技股 四川慕妮娅互联网科技有限公司 工业互联网山东科技大学 美国五大互联网科技公司市值多少
0