【书评:Oracle查询优化改写】第14章 结尾章

  1. 云栖社区>
  2. 博客>
  3. 正文

【书评:Oracle查询优化改写】第14章 结尾章

技术小胖子 2017-11-08 17:29:00 浏览368
展开阅读全文

【书评:Oracle查询优化改写】第14章 结尾章

 

一.1  相关参考文章链接

 

13章的链接参考相关连接:

 

【书评:Oracle查询优化改写】第一章 http://blog.itpub.net/26736162/viewspace-1652985/

【书评:Oracle查询优化改写】第二章 http://blog.itpub.net/26736162/viewspace-1654252/

【书评:Oracle查询优化改写】第 http://blog.itpub.net/26736162/viewspace-1660422/

【书评:Oracle查询优化改写】第 http://blog.itpub.net/26736162/viewspace-1661906/

【书评:Oracle查询优化改写】第五~十三 http://blog.itpub.net/26736162/viewspace-1665934/

 

 

行列互转内容链接:http://blog.itpub.net/26736162/viewspace-1272538/

都是标量子查询惹的祸:http://blog.itpub.net/26736162/viewspace-1222431/

 

 

 

一.2  本文简介

 

 

这本书的第14章选取了能覆盖目前大部分的改写方法的案例。本来最后一篇不准备写的blog的, 但是觉得有始有终,还是把结尾篇写了吧。 为啥不想写呢?还是觉得没啥可写的,sql优化改写范围太广,没有一成不变的,书中给出的例子也只是抛砖引玉,不同的环境还是要根据具体情况来改写,比如这本书的作者认为标量子查询的性能不好,不喜欢使用,但是依据我的经验来说,标量子查询在某些情况下还是比较好的,比如在要求SQL的响应时间的情况下,标量子查询就比较好了。

 

14章目录:

 

 

第 14 章 改写调优案例分享

14.1 为什么不建议使用标量子查询

14.2 用 LEFT JOIN 优化标量子查询

14.3 用 LEFT JOIN 优化标量子查询之聚合改写

14.4 用 LEFT JOIN 及行转列优化标量子查询

14.5 标量中有 ROWNUM =1

14.6 不等连接的标量子查询改写(一)

14.7 不等连接的标量子查询改写(二)

14.8 标量子查询与改写逻辑的一致性

14.9 用分析函数优化标量子查询(一)

14.10 用分析函数优化标量子查询(二)

14.11 用分析函数优化标量子查询(三)

14.12 用分析函数优化标量子查询(四)

14.13 用 MERGE 改写优化 UPDATE 281

14.14 用 MERGE 改写有聚合操作的 UPDATE(一)

14.15 用 MERGE 改写有聚合操作的 UPDATE(二)

14.16 用 MERGE 改写 UPDATE 之多个子查询(一)

14.17 用 MERGE 改写 UPDATE 之多个子查询(二)

14.18 UPDATE 改写为 MERGE 时遇到的问题 

14.19 整理优化分页语句

14.20 让分页语句走正确的 PLAN 

14.21 去掉分页查询中的 DISTINCT

14.22 用 WITH 语句减少自关联

14.23 用 WITH 改写优化查询

14.24 用 WITH 把 OR 改为 UNION

14.25 错误的 WITH 改写

14.26 错误的分析函数用法

14.27 用 LEFT JOIN 优化多个子查询(一)

14.28 用 LEFT JOIN 优化多个子查询(二)

14.29 用 LEFT JOIN 优化多个子查询(三)

14.30 去掉 EXISTS 引起的 FILTER

14.31 重叠时间计数 

14.32 用分析函数改写优化

14.33 相等集合之零件供应商

14.34 相等集合之飞机棚与飞行员

14.35 用分析函数改写最值过滤条件

14.36 用树形查询找指定级别的数据

14.37 行转列与列转行

14.38 UPDATE、ROW_NUMBER 与 MERGE

14.39 改写优化 UPDATE 语句

14.40 改写优化 UNION ALL 语句

14.41 纠结的 MERGE 语句

14.42 用 CASE WHEN 去掉 UNION ALL

14.43 不恰当的 WITH 及标量子查询 

14.44 用分析函数加“行转列”来优化标量子查询

14.45 用分析函数处理问题

14.46 用列转行改写 A 表多列关联 B 表同列 

14.47 用分析函数改写最值语句

14.48 多列关联的半连接与索引 

14.49 巧用分析函数优化自关联

14.50 纠结的 UPDATE 语句

14.51 巧用 JOIN 条件合并 UNION ALL 语句

14.52 用分析函数去掉 NOT IN

14.53 读懂查询中的需求之裁剪语句

14.54 去掉 FILTER 里的 EXISTS 之活学活用 

 

 

 

 

一.3  总结

 

14章也就不举例子的,关于个人优化过的几个sql,可以参考文章链接。

SQL优化 系列

 

【推荐】 SQL优化中索引列使用函数之灵异事件

http://blog.itpub.net/26736162/viewspace-1329880/

【推荐】 oracle 如何预估将要创建的索引的大小

 

oracle 行列互换总结

http://blog.itpub.net/26736162/viewspace-1272538/

【推荐】 关于under any table/view 权限的解释

http://blog.itpub.net/26736162/viewspace-1266876/

【推荐】 有关 视图 vw_sql_rubbish_monitor_lhr 的内容

http://blog.itpub.net/26736162/viewspace-1262559/

【推荐】 统计信息不准确导致执行计划走了笛卡尔积

http://blog.itpub.net/26736162/viewspace-1254942/

【推荐】 11.2.0.2的SPM的一个bug

http://blog.itpub.net/26736162/viewspace-1248506/

【推荐】 update修改为merge(max+decode)

http://blog.itpub.net/26736162/viewspace-1244055/

【推荐】 将游标修改为建表来提高效率

http://blog.itpub.net/26736162/viewspace-1244050/

【推荐】 一个insert插入语句很慢的优化

http://blog.itpub.net/26736162/viewspace-1244044/

【推荐】 都是标量子查询惹的祸

http://blog.itpub.net/26736162/viewspace-1222431/

【推荐】 采用merge语句的非关联形式再次显神能

http://blog.itpub.net/26736162/viewspace-1222423/

【推荐】 采用MERGE语句的非关联形式提升性能 ---后传

http://blog.itpub.net/26736162/viewspace-1222417/

【推荐】 Oracle的告警日志之v$diag_alert_ext视图

http://blog.itpub.net/26736162/viewspace-1221559/

【推荐】 采用MERGE 语句的非关联形式提升性能

http://blog.itpub.net/26736162/viewspace-1218671/

【推荐】 从执行计划的预估行数看执行计划是否正确

http://blog.itpub.net/26736162/viewspace-1209796/

【推荐】 走了索引为啥还像蜗牛一样?

http://blog.itpub.net/26736162/viewspace-1208814/

 

 

一.4  about me

 

     本文转自lhrbest 51CTO博客,原文链接:http://blog.51cto.com/lhrbest/1654645,如需转载请自行联系原作者



 

网友评论

登录后评论
0/500
评论
技术小胖子
+ 关注