-
Oracle 版本: 19c ,Production version 19.3.0.0.0 Enterprise
-
使用场景:对结果集生成总计、小计效果
-
模拟数据:
数学 语文 学号 班级 90 80 0001 1班 80 95 0002 1班 77 99 0003 2班 95 85 0004 2班 -
例子 1(按照班级分组小计、班级总分) :
sqlSELECT NVL(班级,'总计') 班级, CASE WHEN 班级 IS NULL THEN '-' ELSE NVL(学号,'小计') END 学号, SUM(数学) 数学, SUM(语文) 语文 FROM score GROUP BY ROLLUP(班级,学号) ORDER BY 班级,学号班级 学号 数学 语文 1班 0001 90 80 1班 0002 80 95 1班 小计 170 175 2班 0003 77 99 2班 0004 95 85 2班 小计 172 184 总计 - 342 359 -
例子2 (只有总计)
sqlSELECT NVL(班级,'总计') 班级, CASE WHEN 班级 IS NULL THEN '-' ELSE NVL(学号,'小计') END 学号, SUM(数学) 数学, SUM(语文) 语文 FROM score GROUP BY ROLLUP((班级,学号)) -- 意思是 班级、学号组合分组 ORDER BY 班级,学号班级 学号 数学 语文 1班 0001 90 80 1班 0002 80 95 2班 0003 77 99 2班 0004 95 85 总计 - 342 359
Oracle中的Rollup 使用方法
米斯特程序猿2023-09-11 12:15
相关推荐
Lw老王要学习23 分钟前
CentOS 7.9达梦数据库安装全流程解析qq_4232339031 分钟前
Python深度学习入门:TensorFlow 2.0/Keras实战Wasim4041 小时前
【渗透测试】SQL注入laplace01231 小时前
Claude Code 逆向工程报告 笔记(学习记录)2401_836563181 小时前
用Python读取和处理NASA公开API数据2301_818732062 小时前
项目启动报错,错误指向xml 已解决Austindatabases2 小时前
<span class=“js_title_inner“>DBA 未来的是末日还是希望 -- 国外专家博主分析谈发展趋势 (翻译 分析)</span>难得的我们2 小时前
超越Python:下一步该学什么编程语言?青衫码上行2 小时前
NoSql数据库简介 + Redis概述码农阿豪2 小时前
Oracle 到金仓数据库迁移实战:一次真正“落地”的国产替代之旅