Oracle2-Rollup和Cube用法

在这里插入图片描述

在Oracle的聚合函数中,会有按照维度统计的情况,比如上图按照job 和 deptno统计 sal的sum

但是也会遇到同时要求统计只按照job维度统计的情况,并且做到一张表里

1 union 来实现维度不一致

首先反应过来的是分两步查询,再讲结果union起来

select 
  job,null as deptno,sum(sal)
from emp
group by job

union all 

select 
	job,deptno,sum(sal)
from emp
group by job,deptno

在这里插入图片描述

2 rollup 来实现变化维度

在这里插入图片描述

2.2 美化一下

SELECT
  job
  ,SUM(CASE WHEN deptno = '10' THEN "sum" END) AS "10"
  ,SUM(CASE WHEN deptno = '20' THEN "sum" END) AS "20"
  ,SUM(CASE WHEN deptno = '30' THEN "sum" END) AS "30"
  ,SUM(CASE WHEN deptno = '小计' or deptno = '-' THEN "sum" END) AS "小计"
FROM (
  SELECT 
    NVL(job, '总计') AS job,
    CASE WHEN job IS NULL THEN '-' ELSE NVL(TO_CHAR(deptno), '小计') END AS deptno,
    SUM(sal) AS "sum"
  FROM emp
  GROUP BY ROLLUP(job, deptno)
) a
GROUP BY job;

在这里插入图片描述

3 cube

SELECT 
    job,
    deptno,
    SUM(sal) AS "sum"
FROM emp
GROUP BY cube(job, deptno)

在这里插入图片描述

4 rollup vs cube

从以上的查询结果可以看到 rollup和 rullup的不同点在于
rollup只会对rollup (A,B) 做变化的维度的聚合

而 cube(A,B)对A和B都做变化维度的聚合

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/346692.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

快速上手的AI工具-文心一言绘本创作

前言 大家好晚上好,现在AI技术的发展,它已经渗透到我们生活的各个层面。对于普通人来说,理解并有效利用AI技术不仅能增强个人竞争力,还能在日常生活中带来便利。无论是提高工作效率,还是优化日常任务,AI工具…

使用Python和PyTorch库构建一个简单的文本分类大模型:

在当今的大数据时代,文本分类任务在许多领域都有着广泛的应用,如情感分析、垃圾邮件过滤、主题分类等。为了有效地处理这些任务,我们通常需要构建一个强大的文本分类模型。在本篇博客中,我们将使用Python和PyTorch库来构建一个简单…

composer安装hyperf后,nginx配置hyperf

背景 引入hyperf项目用作微服务,使用composer 安装hyperf后,对hyperf进行nginx配置。 配置步骤 因为hyperf监听的是端口,不像其他laravel、lumen直接指向文件即可。所有要监听端口号。 1 配置nginx server {listen 80;//http&#xff1a…

[GDMEC-无人机遥感研究小组]无人机遥感小组-000-数据集制备

基于labelme的无人机语义分割数据集制备 文章目录 基于labelme的无人机语义分割数据集制备1. 数据获取2. 安装labelme3.利用labelme进行标注 1. 数据获取 数据集制备需要利用无人机飞行并采集标注。使用录制模式,镜头垂直向下进行拍摄,得到DJI_XXXX.MP4…

linux基础指令【中篇】

📙 作者简介 :RO-BERRY 📗 学习方向:致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 📒 日后方向 : 偏向于CPP开发以及大数据方向,欢迎各位关注,谢谢各位的支持 目录 补充上篇的细节1.sta…

2023龙信杯wp

打了好像70多分,没拿奖,因为一些众所周知的原因,复盘间隔时间太长了没什么印象了已经 案情简介 2023年9月,某公安机关指挥中心接受害人报案:通过即时通讯工具添加认识一位叫“周微”的女人,两人谈论甚欢,确…

配网行波型故障预警定位装置:电力系统的安全守护神

随着科技的不断发展,电力系统的运行和管理已经越来越依赖于先进的技术手段。在这个领域中,配网行波型故障预警定位装置(也被称为智能电网监测设备)已经成为了一种重要的技术装备。它能够实时监测电力系统的运行状态,及时发现并预警故障&#…

VI / VIM的使用

vi/vim 的区别简单点来说,它们都是多模式编辑器,不同的是 vim 是 vi 的升级版本,它不仅兼容 vi 的所有指令,而且 还有一些新的特性在里面。例如语法加亮,可视化操作不仅可以在终端运行,也可以运行于 x win…

Leetcode25-上升下降字符串(1370)

1、题目 给你一个字符串 s ,请你根据下面的算法重新构造字符串: 从 s 中选出 最小 的字符,将它 接在 结果字符串的后面。 从 s 剩余字符中选出 最小 的字符,且该字符比上一个添加的字符大,将它 接在 结果字符串后面。…

from sklearn.preprocessing import LabelEncoder的详细用法

sklearn.preprocessing 0. 基本解释1. 用法说明2. python例子说明 0. 基本解释 LabelEncoder 是 sklearn.preprocessing 模块中的一个工具,用于将分类特征的标签转换为整数。这在许多机器学习算法中是必要的,因为它们通常不能处理类别数据。 1. 用法说…

进程通信与socket编程实践之猜数字小游戏

socket是实现进程通信的一种重要方式,本文将通过socket编程实现服务器进程与客户端进程之间的通信,并在通信之外实现猜数字的小游戏。 1. 设计思路 本文设计的C/S结构的猜数字游戏功能如下:服务器端自动生成一个1-100之间的随机数字&#x…

未来已来:概念车展漫游可视化的震撼之旅

随着科技的飞速发展,汽车行业正经历着前所未有的变革。而在这场变革中,概念车展无疑是一个引领潮流、展望未来的重要舞台。 想象一下,你站在一个巨大的展厅中,四周陈列着各式各样的概念车。它们有的造型独特,有的功能先…

Protein carbonyl ELISA kit羰基化蛋白ELISA试剂盒

蛋白质羰基化是蛋白质氧化损伤的一种,是氧化应激中一种不可逆的化学修饰。蛋白质羰基化会引起蛋白质结构的改变,使其失去原有的生物学功能,最终导致细胞和组织功能紊乱。蛋白质羰基化不仅是氧化损伤的一项重要指标,也参与多种疾病…

客户大批量保密文件销毁,数据销毁新方案及实践 文件销毁 硬盘销毁 数据销毁 物料销毁

2023年春节前夕,青岛客户经理接到一个电话,韩国驻华机构想请我们做文件销毁,要求在2天内销毁800多箱纸文件。800多箱需要在短短两天内完成销毁,这一数字创下了淼一文件数据销毁自2009年以来的历史记录。单从业绩和营销角度看&…

AIGC是什么?GPT-4.0、DALL·E以及Midjourney等多种智能服务

AIGC(人工智能生成内容,Artificial Intelligence Generated Content)是指利用人工智能技术自动生成的文本、图像、音频和视频等内容。随着技术的进步,AIGC已经成为创意产业和内容创作领域的一股新兴力量。MidTool作为一款集成了多…

Spring Security 之 基本认证

基本认证 这部分提供了关于Spring Security如何为基于Servlet的应用程序提供基本HTTP认证支持的详细信息。 这部分描述了Spring Security中HTTP基本认证的工作原理。首先,我们看到WWW-Authenticate标头被发送回未经身份验证的客户端: 首先,用户对未经授权的资源 /private …

2024.1.22力扣每日一题——最大交换

2024.1.22 题目来源我的题解方法一 暴力法方法一 哈希表贪心方法三 贪心 题目来源 力扣每日一题;题序:670 我的题解 方法一 暴力法 直接暴力对数字中的每两个位置进行交换,然后记录交换后生成数字的最大值 时间复杂度:O( log ⁡…

用游戏盾会掉线吗,游戏出现掉线或者卡顿的可能有哪些原因

目前游戏类用户使用抗D盾进行防护DDOS攻击的情况非常普遍,有些第一次了解接触到盾的用户,会有担心接入盾使用后,玩家那边会不会掉线或者出现卡的问题。 其实关于这方面是完全不用担心,游戏盾都是由高防节点智能多线节点分布&…

TCP的连接和关闭的那些事

一、基础概念 1、啥是TCP? 它是面向连接的一种协议,任何数据发送之前都需要建立连接。 2、TCP/IP协议的四层中那一层? TCP位于运输层,详见下图 3、TCP协议的状态机有哪些? 在链接建立和断开不同阶段都有不同的状态&#xf…

企业邮箱遭入侵!印度制药巨头损失超4500万元

近日,印度制药巨头阿尔肯实验室子公司部分员工的企业邮箱遭入侵,导致其子公司被欺诈5.2亿卢比(约合人民币4500万元)。而根据截至2023年9月的季度财务报告数据,该公司营业收入为263.46亿卢比,净利润为64.65亿…