内容简介
《精通Oracle SQL(第2版)》语言精炼、风趣,所涵盖的内容涉及SQL核心、SQL执行、分析函数、联结、测试与质量保证等,并提供大量实用性建议,且总结出方方面面的“技巧”,帮助读者在阅读过程中快速消化所看内容。新版针对Oracle 12c进行了大幅修订,以反映技术的发展动态。
《精通Oracle SQL(第2版)》旨在为Oracle数据库开发人员、DBA和架构师提供参考。
目录
第1章 SQL核心 1
1.1 SQL语言 1
1.2 数据库的接口 2
1.3 SQL*Plus回顾 3
1.3.1 连接到数据库 3
1.3.2 配置SQL*Plus环境 4
1.3.3 执行命令 6
1.4 5个核心的SQL语句 8
1.5 SELECT语句 8
1.5.1 FROM子句 10
1.5.2 WHERE子句 11
1.5.3 GROUP BY子句 11
1.5.4 HAVING子句 12
1.5.5 SELECT列表 13
1.5.6 ORDER BY子句 13
1.6 INSERT语句 14
1.6.1 单表插入 14
1.6.2 多表插入 15
1.7 UPDATE语句 17
1.8 DELETE语句 20
1.9 MERGE语句 22
1.10 小结 24
第2章 SQL执行 25
2.1 Oracle架构基础 25
2.2 SGA共享池 26
2.3 库高速缓存 27
2.4 相同的语句 28
2.5 SGA缓冲区缓存 31
2.6 查询转换 34
2.6.1 查询块 35
2.6.2 视图合并 37
2.6.3 子查询解嵌套 41
2.6.4 联结消除 43
2.6.5 排序消除 45
2.6.6 谓词推进 46
2.6.7 使用物化视图进行查询重写 48
2.7 确定执行计划 50
2.8 执行计划并取得数据行 54
2.9 SQL执行——总览 56
2.10 小结 57
第3章 访问和联结方法 58
3.1 全扫描访问方法 58
3.1.1 如何选择全扫描操作 59
3.1.2 全扫描与舍弃 62
3.1.3 全扫描与多块读取 63
3.1.4 全扫描与高水位线 63
3.2 索引扫描访问方法 68
3.2.1 索引结构 69
3.2.2 索引扫描类型 71
3.2.3 索引扫描 75
3.2.4 索引范围扫描 76
3.2.5 索引全扫描 77
3.2.6 索引跳跃扫描 80
3.2.7 索引快速全扫描 81
3.3 联结方法 82
3.3.1 嵌套循环联结 83
3.3.2 排序—合并联结 85
3.3.3 散列联结 86
3.3.4 笛卡儿联结 89
3.3.5 外联结 90
3.4 小结 95
第4章 SQL是关于集合的 96
4.1 以面向集合的思维方式来思考 96
4.1.1 从面向过程转变为基于集合的思维方式 97
4.1.2 面向过程与基于集合的思维方式:例子 100
4.2 集合运算 102
4.2.1 UNION和UNION ALL 103
4.2.2 MINUS 106
4.2.3 INTERSECT 107
4.3 集合与空值 108
4.3.1 空值与非直观结果 108
4.3.2 空值与集合运算 111
4.3.3 空值与GROUP BY和ORDER BY 112
4.3.4 空值与聚合函数 114
4.4 小结 114
第5章 提出问题 115
5.1 问出好的问题 115
5.2 提问的目的 116
5.3 问题的种类 116
5.4 问题的问题 118
5.5 数据的问题 120
5.6 建立逻辑表达式 125
5.7 小结 130
第6章 SQL执行计划 131
6.1 解释计划 131
6.1.1 使用解释计划 131
6.1.2 PLAN_TABLE 133
6.1.3 分解计划 135
6.1.4 导致解释计划未达目的的原因 136
6.1.5 阅读计划 139
6.1.6 访问和筛选谓语 140
6.1.7 使计划便于阅读 141
6.2 执行计划 142
6.2.1 查看生成的SQL语句 142
6.2.2 查看相关执行计划 142
6.2.3 收集执行计划统计信息 144
6.2.4 标识SQL语句以便以后取回计划 146
6.2.5 深入理解DBMS_XPLAN 149
6.2.6 使用SQL监控报告 154
6.2.7 使用计划信息解决问题 157
6.3 小结 166
第7章