Oracle教程:分组函数嵌套与大数据分析
需积分: 0 77 浏览量
更新于2024-08-06
收藏 31.31MB PDF 举报
"这篇文档是关于Oracle数据库的教程,涵盖了从基础到高级的各种主题,包括数据库基础、查询、函数、多表查询、子查询、数据字典、数据类型、体系结构、DDL、DML、约束、视图、索引、序列、同义词、PL/SQL、游标、函数、存储过程、触发器、事务、用户管理、备份恢复、SQLLoader、数据库设计范式以及对象关系数据库系统等。文档特别提到了Oracle在2009年收购Sun Microsystems的重要事件,强调了数据库在云计算中的核心地位和Oracle在技术整合上的优势,特别是Java技术对于跨平台使用的重要性。"
在5.6章节中,讨论了分组函数嵌套的概念。在这个例子中,`SELECT max(avg(sal)) FROM emp GROUP BY deptno;` 这个查询展示了如何在每个部门中计算平均工资的最高值。`max(avg(sal))` 首先对每个部门的薪水进行平均(`avg(sal)`),然后找出这些平均值中的最大值(`max()`).
在5.7章节的练习中,有以下几个问题:
1. `SELECT avg(sal) FROM emp WHERE sal > 500 GROUP BY deptno;` 这个查询用于计算所有薪水超过500的员工在各个部门的平均工资。
2. `SELECT deptno, avg(sal) FROM emp GROUP BY deptno HAVING avg(sal) > 500;` 这个查询则找出平均工资大于500的部门,`HAVING` 子句在聚合后过滤结果。
3. `SELECT max(comm) FROM emp WHERE deptno = 30;` 查询部门30中获得最高奖金的金额。
4. `SELECT ename FROM emp WHERE comm = (SELECT max(comm) FROM emp WHERE deptno=30);` 找出部门30中奖金最高的员工姓名,通过子查询获取最大奖金值并与主查询匹配。
5. `SELECT job, min(sal), count(*) FROM emp GROUP BY job;` 查询每个职位的最低工资和员工数量。
这些查询展示了如何利用Oracle SQL进行复杂的数据分析,包括使用分组函数(如`AVG`, `MAX`, `COUNT`)和条件过滤(如`WHERE`, `HAVING`),以及子查询来获取特定条件下的数据。此外,也体现了在实际业务场景中,如何通过数据库操作来满足数据分析的需求。
215 浏览量
181 浏览量
2021-09-10 上传
745 浏览量
364 浏览量
1338 浏览量
2022-09-21 上传
614 浏览量
郑天昊
- 粉丝: 38
- 资源: 3882
最新资源
- ES管理利器:ES Head工具详解
- Layui前端UI框架压缩包:轻量级的Web界面构建利器
- WPF 字体布局问题解决方法与应用案例
- 响应式网页布局教程:CSS实现全平台适配
- Windows平台Elasticsearch 8.10.2版发布
- ICEY开源小程序:定时显示极限值提醒
- MATLAB条形图绘制指南:从入门到进阶技巧全解析
- WPF实现任务管理器进程分组逻辑教程解析
- C#编程实现显卡硬件信息的获取方法
- 前端世界核心-HTML+CSS+JS团队服务网页模板开发
- 精选SQL面试题大汇总
- Nacos Server 1.2.1在Linux系统的安装包介绍
- 易语言MySQL支持库3.0#0版全新升级与使用指南
- 快乐足球响应式网页模板:前端开发全技能秘籍
- OpenEuler4.19内核发布:国产操作系统的里程碑
- Boyue Zheng的LeetCode Python解答集