【书评: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,如需转载请自行联系原作者