saundy 发表于 2018-10-21 12:45:06

《跨 界 之SQL、PL/SQL优化指南》目录下

  
  
  目 录
  
  三. 常见不合理的语句.........................................................100
  3.1). 没有使用绑定变量....................................................100
  3.2). 隐含转换............................................................101
  3.3). 索引列上进行运算....................................................102
  3.4). SELECT中使用 *......................................................103
  3.5). SQL中调用序列、函数的问题...........................................104
  3.6). 聚合操作取了不需要的列,列又作了转换或排序操作......................105
  3.7). SQL语句无法共享.....................................................107
  3.8). 表名书写顺序的问题..................................................108
  3.9). SQL中大小写混写.....................................................110
  3.10). 表的別名...........................................................110
  3.11). 表的关联字段设计不合理的问题.......................................112
  3.12). 没有使用 ORACLE提供的高效函数......................................112
  3.13). 减少表的访问次数的问题.............................................114
  3.14). 减少数据的查找范围.................................................115
  3.15). 画蛇添足的写法.....................................................116
  3.16). 子程序缺少异常处理部分.............................................118
  3.17). 子程序处理逻辑不明确,没有使用直接赋值,且无异常处理...............119
  四. SQL优化写法..............................................................121
  4.1). INSERT语句的优化....................................................121
  4.1.1). 逐条插入改为批处理插入....................................121
  4.1.2). INSERT ... INTO... SELECT ... FROM 的优化..............123
  4.2). DELECT 语句的代化...................................................124
  4.2.1). 单表删除..................................................126
  4.2.2). 多表关联删除..............................................126
  4.3). UPDATE 语句的优化...................................................128
  4.3.1). 单表更新优化..............................................128
  4.3.2). 多表关联更新优化..........................................129
  4.4). SELECT 语句的优化...................................................130
  4.4.1). DISTINCT 的优化案例.......................................131
  4.4.2). 0R的优化案例..............................................132
  4.4.3). EXISTS的优化案例..........................................136
  4.4.4). 0R和EXISTS的混合优化案例..................................137
  4.4.5). MERGE INTO没有使用索引的案例..............................138
  4.4.6). 25个 UNION语句的优........................................140
  4.4.7). 善于使用 ORACLE函数的案例.................................143
  4.4.8). 消除重复过滤条件的案例....................................145
  4.4.9). 减少中间结果集的反案例....................................147
  4.4.10). 增加冗余字段使用索引的案例...............................148
  4.4.11). 减少表的扫描次数的案例...................................149
  4.4.12). 使用 ROWID 优化的案例....................................151
  4.4.13). ORDER BY 的优化案例......................................151
  4.4.14). 使用隐含提示的优化案例...................................152
  五. 分析、监控和调优.........................................................157
  5.1). 如何确定那些语句需要优化............................................157
  5.1.1). 查询 V$SQL,V$SQLAREA等视图...............................157
  5.1.2). 查看 ORACLE的自动调优任务.................................158
  5.2). 如何查看执行计划....................................................160
  5.2.1). 在 PL/SQL工具中按 EXPLAIN PLAN 按钮或者F5查看执行计划.....160
  5.2.2). 使用 EXPLAIN PLAN 语句查看执行计划........................160
  5.2.3). 在CMD窗口或 SHEEL中使用SET AUTOTRACE TRACEONLY查看........161
  5.2.4). 如何分析执行计划..........................................162
  5.3). 如何确定优化点......................................................166
  5.4). 如何使用自动优化建议................................................167
  5.4.1). 使用DBMS_SQLTUNE创建调优任务..............................167
  5.4.2). 通过SQL_ID创调优任务......................................169
  5.4.3). 通过DBA_ADVISOR_ACTIONS视图查看优化建议...................171
  5.5). 如何使用SQL_TRACE和10046事件进行优化................................172
  5.5.1). 使用SQL_TRACE进行优化.....................................172
  5.5.2). 使用10046事件进行优化.....................................174
  5.6). 如何收集统计信息....................................................176
  5.7). 如何监控索引........................................................178
  六. 补充部分(报表开发神器)...................................................180
  6.1). 分析函数............................................................180
  a). RANK() / DENSE_RANK()函数.....................................181
  b). 开窗函数(windowing functions)...............................182
  c). 制表函数(reporting functions)...............................183
  d). LAG / LEAD函数 ...............................................184
  e). FIRST / LAST函数..............................................185
  f). LISTAGG 高级分析函数..........................................186
  6.2). 行列转换..........................................................187
  6.2.1). PIVOT列转为行...........................................187
  6.2.2). UNPIVOT 行转为列........................................190
  6.3). SQL 模型子句(SQL MODELING)........................................192
  6.3.1). 简介....................................................192
  6.3.2). 单个单元格引用(SINGLE CELL REFERENCES)..................193
  6.3.3). 位置引用(POSITIONAL REFERENCES).........................194
  6.3.4). 位置引用,既更新现有单元格,又创建新单元格..............195
  6.3.5). 多单元格引用(MULTI-CELL REFERENCES).....................196
  6.3.6). 使用CV函数..............................................197
  6.3.7). 使用F0R循环.............................................198
  6.3.8). 使用ANY通配符...........................................199
  

页: [1]
查看完整版本: 《跨 界 之SQL、PL/SQL优化指南》目录下