编辑点评:
Oracle查询优化改写技巧与案例2.0的写作手法十分朴实,甚至可以说有些章节有点过于简练,但是瑕不掩瑜,书中实用的内容之多是十分值得肯定的。本书可以作为DBA的参考书籍,也可以作为开发人员编写SQL的指导书籍
编辑推荐
适读人群 :如果您是开发人员,经常与Oracle打交道,那么本书可以帮助您处理复杂的需求,写出高性能的语句。如果您是运维人员,则本书可以帮助您更快地完成慢语句的改写优化。
字典式写作手法:不讲具体语法,没有简单知识堆砌,直接以案例形式讲技巧与案例
大量优化实战方法:将主要SQL优化点一一剖析,分享大量SQL优化的实际工作经验
50余改写调优案例:覆盖大多数DBA日常工作场景,具有相当大的实用价值
技巧+案例:可以作为DBA的参考手册,也可以作为开发人员编写SQL的速查字典
《Oracle查询优化改写技巧与案例2.0》在《Oracle查询优化改写技巧与案例》的基础上进行了如下更新。
所有代码都重新执行了一遍,以减少谬误。
为了提高清晰度,尽量删除了图片,改用文本方式展示案例结果。
为了提高阅读效率,删除了平时较少用到的内容。
为了提高可读性,大部分案例都改用了SAMPLE中的数据,这样读者可以更容易地验证代码及思路。
内容简介
《Oracle查询优化改写技巧与案例2.0》不讲具体语法,只是以案例的形式介绍各种查询语句的用法。第1~4章是基础部分,讲述了常用的各种基础语句,以及常见的错误和正确语句的写法,应熟练掌握这部分内容,因为在日常查询和优化改写中都要用到;第5~12章是提高部分,讲解了正则表达式、分析函数、树形查询及汇总函数的用法,这部分内容常用于一些复杂需求的实现及优化改写;最后两章介绍日常的优化改写案例,这部分内容是前面所学知识的扩展应用。
如果您是开发人员,经常与Oracle打交道,那么《Oracle查询优化改写技巧与案例2.0》可以帮助您处理复杂的需求,写出高性能的语句。如果您是运维人员,则本书可以帮助您更快地完成慢语句的改写优化。
作者简介
师庆栋,网名有教无类。SWOUG(西南Oracle用户组)成员,资深Oracle开发DBA,道森培训高级讲师。拥有超过17年的IT从业经验,擅长Oracle数据库开发,对于数据库架构设计、性能优化拥有丰富的实战经验!通过大量的报表优化改写,积累了丰富的优化改写经验,擅长对Oracle查询语句的优化改写。
罗炳森,网名落落。擅长SQL优化,对Oracle优化器有较深的理解。从2007年至今一直专注于SQL优化、表设计优化、SQL查询改写。经常热心帮助网友解决SQL性能问题,累计SQL优化案例上千个。
章节详解
本书共分14章,各章的主要内容如下。
第1章介绍初学者在NULL上常犯的错误、字符串中单引号的处理方式及模糊查询时对通配符的转义。
第2章讲述了ORDER BY的用法及TRANSLATE的特殊用法。
第3章是基础知识的重点内容,需要掌握好各种连接的写法及为什么要左联、右联,以及过滤条件错误地放在WHERE里会有什么影响;当数据有重复值时要直接关联还是分组汇总后再关联。
第4章介绍了UPDATE语句的正确用法,以及什么时候UPDATE语句应改写为MERGE。
第5章以案例的形式讲解了正则表达式的用法,对正则表达式的基础语法不熟悉的读者可以通过官方文档或我的博客来学习,这里面对字符串的拆分方法可以直接套用,而对字符串的分组处理难度稍高,不常处理类似数据的读者可以略过。
第6章介绍了常用分析函数的几个案例,在大部分情况下使用分析函数会让查询速度得到很大提升。所以,如果想熟练地改写,就必须熟悉分析函数的应用。另外,本章还对很多人感到模糊的max() keep()语句进行了分析。
第7、8章讲了DATE类型的常见用法。
第9章仍然介绍分析函数,希望本章内容对范围的处理能给读者一些借鉴。
第10章的重点是结果集的分页,要弄清楚如何分页,为什么Oracle的分页会写得那么复杂,等等。
第11章讲述了行列转换函数,并对两个函数进行了剖析,理解了其中的原理就可以用UNPIVOT对UNION ALL做一定的优化。本章的另一个重点就是分组汇总小计的统计,熟练掌握ROLLUP及CUBE可以让你少写一些UNION ALL语句。
第12章能帮助读者在写树形查询时减少不必要的错误,生成更准确的数据。
第13章选取了部分网友的需求案例,希望读者能通过这些案例的启发找到实现自己需求的思路。
第14章选取了能覆盖目前大部分改写方法的案例。读者需要在对前面内容熟悉的基础上来学习这些案例。各种改写方法能否提高速度都与对应的环境
Comments