Oracle查询优化改写技巧与案例2.0 pdf下载pdf下载

Oracle查询优化改写技巧与案例2.0百度网盘pdf下载

作者:
简介:本篇提供书籍《Oracle查询优化改写技巧与案例2.0》百度网盘pdf下载
出版社:湖北博道图书专营店
出版时间:2018-06
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

基本信息(以实物为准)

  • 商品名称:Oracle查询优化改写技巧与案例2.0
  • 作者:
  • 定价:79
  • 出版社:电子工业
  • 书号:9787121341410

其他参考信息(以实物为准)

  • 出版时间:2018-06-01
  • 印刷时间:2018-06-15
  • 版次:1
  • 印次:1
  • 开本:
  • 包装:平装
  • 页数:352
  • 字数:488千字

编辑推荐语

字典式写作手法:不讲具体语法,没有简单知识堆砌,直接以案例形式讲技巧与案例 大量优化实战方法:将主要SQL优化点一一剖析,分享大量SQL优化的实际工作经验 50余改写调优案例:覆盖大多数DBA日常工作场景,具有相当大的实用价值 技巧+案例:可以作为DBA的参考手册,也可以作为开发人员编写SQL的速查字典 《Oracle查询优化改写技巧与案例2.0》在《Oracle查询优化改写技巧与案例》的基础上进行了如下 新。 √所有代码都重新执行了一遍,以减少谬误。 √为了提高清晰度,尽量删除了图片,改用文本方式展示案例结果。 √为了提高阅读效率,删除了平时较少用到的内容。 √为了提高可读性,大部分案例都改用了SAMPLE中的数据,这样读者可以 容易地验证代码及思路。

内容提要

本书不讲具体语法,只是以案例的形式介绍各种查询语句的用法。 ~4章是基础部分,讲述了常用的各种基础语句,以及常见的错误和正确语句的写法,应熟练掌握这部分内容,因为在日常查询和优化改写中都要用到;第5~12章是提高部分,讲解了正则表达式、分析函数、树形查询及汇总函数的用法,这部分内容常用于一些复杂需求的实现及优化改写; 两章介绍日常的优化改写案例,这部分内容是前面所学知识的扩展应用。如果您是开发人员,经常与Oracle打交道,那么本书可以帮助您处理复杂的需求,写出高性能的语句。如果您是运维人员,则本书可以帮助您 快地完成慢语句的改写优化。

作者简介

师庆栋,网名有教无类。SWOUG(西南Oracle用户组)成员, Oracle开发DBA,道森培训 讲师。拥有超过17年的IT从业经验,擅长Oracle数据库开发,对于数据库架构设计、性能优化拥有丰富的实战经验!通过大量的报表优化改写,积累了丰富的优化改写经验,擅长对Oracle查询语句的优化改写。
  罗炳森,网名落落。擅长SQL优化,对Oracle优化器有较深的理解。从2007年至今一直专注于SQL优化、表设计优化、SQL查询改写。经常热心帮助网友解决SQL性能问题,累计SQL优化案例上千个。

目录

目录
第1章 单表查询1
1.1 查询表中所有的行与列1
1.2 从表中检索部分行2
1.3 查找空值3
1.4 空值与运算3
1.5 处理空值4
1.6 空值与函数5
1.7 查找满足多个条件的行6
1.8 从表中检索部分列7
1.9 为列取有意义的名称7
1.10 在WHERE子句中引用取别名的列8
1.11 拼接列8
1.12 在SELECT语句中使用条件逻辑9
1.13 限制返回的行数11
第2章 给查询结果排序12
2.1 以 的次序返回查询结果12
2.2 按多个字段排序14
2.3 按子串排序15
2.4 从表中随机返回n条记录16
2.5 TRANSLATE18
2.6 按数字和字母混合字符串中的字母排序19
2.7 处理排序空值20
2.8 根据条件取不同列中的值来排序21
第3章 操作多个表23
3.1 UNION ALL与空字符串23
3.2 UNION与OR24
3.3 UNION与去重26
3.4 组合相关的行30
3.5 IN、EXISTS和INNER JOIN30
3.6 INNER JOIN、LEFT JOIN、RIGHT JOIN和FULL JOIN解析32
3.7 外连接与过滤条件36
3.8 自关联39
3.9 NOT IN、NOT EXISTS和LEFT JOIN40
3.10 检测两个表中的数据及对应数据的条数是否相同43
3.11 聚集与内连接44
第4章 插入、 新与删除49
4.1 插入新记录49
4.2 阻止对某几列插入50
4.3 复制表的定义及数据51
4.4 用WITH CHECK OPTION限制数据录入51
4.5 多表插入语句52
4.6 用其他表中的值 新56
4.7 合并记录62
4.8 删除违反参照完整性的记录64
4.9 删除名称重复的记录64
第5章 使用字符串67
5.1 生成连续数值67
5.2 遍历字符串68
5.3 计算字符在字符串中出现的次数69
5.4 从字符串中删除不需要的字符71
5.5 将字符和数字数据分离72
5.6 查询只包含字母或数字型的数据73
5.7 提取姓名的大写首字母缩写78
5.8 根据表中的行创建一个分隔列表79
5.9 提取第n个分隔的子串80
5.10 分解IP地址82
5.11 将分隔数据转换为多值IN列表82
5.12 组合去重83
第6章 使用数字86
6.1 常用聚集函数86
6.2 列转行88
6.3 行转列89
6.4 生成累计和91
6.5 累计与重复值95
6.6 生成排名97
6.7 返回 值对应信息98
6.8 求总和的百分比99
第7章 日期运算103
7.1 日期类型103
7.2 日期计算105
7.3 时间间隔类型105
7.4 日期计算函数106
7.5 间隔月份108
7.6 获取记录间的间隔时间108
第8章 日期操作112
8.1 提取日期中的信息112
8.2 提取间隔类型中的信息115
8.3 周的计算117
8.4 计算一年中周内各日期的次数119
8.5 确定一年是否为闰年123
8.6 创建本月日历123
8.7 全年日历126
8.8 补充范围内丢失的值129
8.9 识别重叠的日期范围131
第9章 范围处理134
9.1 定位连续值的范围134
9.2 合并连续区间136
9.3 合并重叠区间140
9.4 用WITH进行范围分组143
0章 查找147
10.1 给结果集分页147
10.2 使用管道函数把全表查询改为增量查询149
10.3 内联视图与错误数据153
10.4 正确使用分析函数155
10.5 找到包含 值和 小值的记录157
10.6 提取维度信息159
1章 报表和数据仓库运算162
11.1 行转列子句162
11.2 列转行子句165
11.3 将结果集反向转置为一列168
11.4 打印小票与行列转换169
11.5 数据分组172
11.6 计算简单的小计173
11.7 判别非小计的行175
11.8 对不同组/分区同时实现聚集177
11.9 移动范围取值分析179
11.10 计算本期、新增、累加182
11.11 listagg与小九九186
2章 分层查询188
12.1 简单的树形查询188
12.2 根节点、分支节点、叶子节点190
12.3 sys_connect_by_path191
12.4 树形查询中的排序192
12.5 树形查询中的WHERE193
12.6 查询树形的一个分支195
12.7 剪去一个分支196
12.8 多行字符串的拆分196
3章 应用案例实现199
13.1 解析简单公式199
13.2 匹配汉字200
13.3 多表全外连接的问题202
13.4 根据传入条件返回不同列中的数据203
13.5 拆分字符串进行连接205
13.6 用“行转列”来得到隐含信息206
13.7 用隐藏数据进行行转列208
13.8 用正则表达式提取clob里的文本格式记录集210
4章 改写调优案例分享212
14.1 为什么不建议使用标量子查询212
14.2 用LEFT JOIN优化标量子查询215
14.3 用LEFT JOIN优化标量子查询之聚合改写216
14.4 用LEFT JOIN及行转列优化标量子查询217
14.5 标量中有ROWNUM=1218
14.6 ROWNUM=1引起的逻辑问题219
14.7 标量中有不等关联时改写的问题222
14.8 标量中有聚合函数时改写的问题226
14.9 用分析函数优化标量子查询(一)229
14.10 用分析函数优化标量子查询(二)231
14.11 用分析函数优化标量子查询(三)233
14.12 标量中的树形查询235
14.13 使用标量子查询优化取 值语句238
14.14 用MERGE改写优化UPDATE240
14.15 UPDATE中有ROWNUM=1243
14.16 用MERGE使用左联245
14.17 用MERGE改写UPDATE之多个子查询249
14.18 将UPDATE改写为MERGE时遇到的问题251
14.19 通过分页方式优化 值语句254
14.20 让分页语句走正确的PLAN256
14.21 去掉分页查询中的DISTINCT257
14.22 优化有GROUP BY的分页语句261
14.23 用WITH语句优化查询264
14.24 用WITH辅助把OR改为UNION265
14.25 错误的WITH改写269
14.26 错误的分析函数用法272
14.27 用LEFT JOIN优化多个子查询(一)274
14.28 用LEFT JOIN优化多个子查询(二)278
14.29 用LEFT JOIN优化多个子查询(三)280
14.30 去掉由EXISTS引起的FILTER283
14.31 巧改驱动表提升效率284
14.32 用分析函数 改反连接286
14.33 集合判断288
14.34 相等集合判断289
14.35 用分析函数改写 值过滤条件291
14.36 用树形查询找 级别的数据292
14.37 行转列与列转行293
14.38 UPDATE、ROW_NUMBER与MERGE295
14.39 一个UPDATE语句的优化298
14.40 自定义函数对速度的影响302
14.41 纠结的MERGE语句305
14.42 用CASE WHEN去掉UNION ALL308
14.43 不恰当的WITH及标量子查询320
14.44 用分析函数加“行转列”来优化标量子查询323
14.45 用分析函数处理问题326
14.46 用列转行改写A表多列关联B表同列329
14.47 用分析函数改写 值语句332
14.48 多列关联的半连接与索引334
14.49 巧用分析函数优化自关联335
14.50 纠结的UPDATE语句340
14.51 巧用JOIN条件合并UNION ALL语句342
14.52 用分析函数去掉NOT IN345
14.53 读懂查询中的需求之裁剪语句349
14.54 去掉FILTER里的EXISTS之活学活用350