一:下載途徑
二:圖書圖樣
三:目錄
第1章 SQL核心
1.1 SQL語言
1.2 數據庫的接口
1.3 SQL*Plus回顧
1.3.1 連接到數據庫
1.3.2 配置SQL*Plus環境
1.3.3 執行命令
1.4 5個核心的SQL語句
1.5 SELECT語句
1.5.1 FROM子句
1.5.2 WHERE子句
1.5.3 GROUP BY子句
1.5.4 HAVING子句
1.5.5 SELECT列表
1.5.6 ORDER BY子句
1.6 INSERT語句
1.6.1 單表插入
1.6.2 多表插入
1.7 UPDATE語句
1.8 DELETE語句
1.9 MERGE語句
1.10 小結第2章 SQL執行
2.1 Oracle架構基礎
2.2 SGA共享池
2.3 庫高速緩存
2.4 完全相同的語句
2.5 SGA緩沖區緩存
2.6 查詢轉換
2.6.1 查詢塊
2.6.2 視圖合並
2.6.3 子查詢解嵌套
2.6.4 聯結消除
2.6.5 排序消除
2.6.6 謂詞推進
2.6.7 使用物化視圖進行查詢重寫
2.7 確定執行計划
2.8 執行計划並取得數據行
2.9 SQL執行——總覽
2.10 小結第3章 訪問和聯結方法
3.1 全掃描訪問方法
3.1.1 如何選擇全掃描操作
3.1.2 全掃描與舍棄
3.1.3 全掃描與多塊讀取
3.1.4 全掃描與高水位線
3.2 索引掃描訪問方法
3.2.1 索引結構
3.2.2 索引掃描類型
3.2.3 索引唯一掃描
3.2.4 索引范圍掃描
3.2.5 索引全掃描
3.2.6 索引跳躍掃描
3.2.7 索引快速全掃描
3.3 聯結方法
3.3.1 嵌套循環聯結
3.3.2 排序—合並聯結
3.3.3 散列聯結
3.3.4 笛卡兒聯結
3.3.5 外聯結
3.4 小結第4章 SQL是關於集合的
4.1 以面向集合的思維方式來思考
4.1.1 從面向過程轉變為基於集合的思維方式
4.1.2 面向過程與基於集合的思維方式:例子
4.2 集合運算
4.2.1 UNION和UNION ALL
4.2.2 MINUS
4.2.3 INTERSECT
4.3 集合與空值
4.3.1 空值與非直觀結果
4.3.2 空值與集合運算
4.3.3 空值與GROUP BY和ORDER BY
4.3.4 空值與聚合函數
4.4 小結第5章 提出問題
5.1 問出好的問題
5.2 提問的目的
5.3 問題的種類
5.4 問題的問題
5.5 數據的問題
5.6 建立邏輯表達式
5.7 小結第6章 SQL執行計划
6.1 解釋計划
6.1.1 使用解釋計划
6.1.2 PLAN_TABLE
6.1.3 分解計划
6.1.4 導致解釋計划未達目的的原因
6.1.5 閱讀計划
6.1.6 訪問和篩選謂語
6.1.7 使計划便於閱讀
6.2 執行計划
6.2.1 查看最近生成的SQL語句
6.2.2 查看相關執行計划
6.2.3 收集執行計划統計信息
6.2.4 標識SQL語句以便以后取回計划
6.2.5 深入理解DBMS_XPLAN
6.2.6 使用SQL監控報告
6.2.7 使用計划信息解決問題
6.3 小結第7章 高級分組
7.1 基本的GROUP BY用法
7.2 HAVING子句
7.3 GROUP BY的“新”功能
7.4 GROUP BY的CUBE擴展
7.5 CUBE的實際應用
7.6 用GROUPING()函數排除空值
7.7 用GROUPING()擴展報告
7.8 用GROUPING_ID()擴展報告
7.9 GROUPING SETS與ROLLUP()
7.10 GROUP BY局限性
7.11 小結第8章 分析函數
8.1 概覽
8.2 示例數據
8.3 分析函數剖析
8.4 函數列表
8.5 聚合函數
8.5.1 跨越整個分區的聚合函數
8.5.2 細粒度窗口聲明
8.5.3 默認窗口聲明
8.6 lead和lag
8.6.1 語法和排序
8.6.2 例1:從前一行中返回一個值
8.6.3 理解數據行的位移
8.6.4 例2:從下一行中返回一個值
8.7 first_value和last_value
8.7.1 例子:使用first_value計算最大值
8.7.2 例子:使用last_value計算最小值
8.8 其他分析函數
8.8.1 nth_value
8.8.2 rank
8.8.3 dense_rank
8.8.4 row_number
8.8.5 ratio_to_report
8.8.6 percent_rank
8.8.7 percentile_cont
8.8.8 percentile_disc
8.8.9 NTILE
8.8.10 stddev
8.8.11 listagg
8.9 性能調優
8.9.1 執行計划
8.9.2 謂詞
8.9.3 索引
8.10 高級話題
8.10.1 動態SQL
8.10.2 嵌套分析函數
8.10.3 並行
8.10.4 PGA大小
8.11 組織行為
8.12 小結第9章 MODEL子句
9.1 電子表格
9.2 使用MODEL子句實現跨行引用
9.2.1 示例數據
9.2.2 剖析MODEL子句
9.2.3 規則
9.3 位置和符號引用
9.3.1 位置標記
9.3.2 符號標記
9.3.3 FOR循環
9.4 返回更新后的行
9.5 求解順序
9.5.1 行求解順序
9.5.2 規則求解順序
9.6 聚合
9.7 迭代
9.7.1 示例
9.7.2 PRESENTV與空值
9.8 查找表
9.9 空值
9.10 使用MODEL子句進行性能調優
9.10.1 執行計划
9.10.2 謂詞推進
9.10.3 物化視圖
9.10.4 並行
9.10.5 MODEL子句執行中的分區
9.10.6 索引
9.11 子查詢因子化
9.12 小結第10章 子查詢因子化
10.1 標准用法
10.2 用WITH定義PL/SQL函數
10.3 SQL優化
10.3.1 測試執行計划
10.3.2 測試查詢改變的影響
10.3.3 尋找其他優化機會
10.3.4 將子查詢因子化應用到PL/SQL中
10.4 遞歸子查詢
10.4.1 CONNECT BY示例
10.4.2 RSF示例
10.4.3 RSF的限制條件
10.4.4 與CONNECT BY的不同點
10.5 復制CONNECT BY的功能
10.5.1 LEVEL偽列
10.5.2 SYS_CONNECT_BY_PATH函數
10.5.3 CONNECT_BY_ROOT運算符
10.5.4 CONNECT_BY_ISCYCLE偽列和NOCYCLE參數
10.5.5 CONNECT_BY_ISLEAF偽列
10.6 小結第11章 半聯結和反聯結
11.1 半聯結
11.2 半聯結執行計划
11.3 控制半聯結執行計划
11.3.1 使用提示控制半聯結執行計划
11.3.2 在實例級控制半聯結執行計划
11.4 半聯結限制條件
11.5 半聯結必要條件
11.6 反聯結
11.7 反聯結執行計划
11.8 控制反聯結執行計划
11.8.1 使用提示控制反聯結執行計划
11.8.2 在實例級控制反聯結執行計划
11.9 反聯結限制條件
11.10 反聯結必要條件
11.11 小結第12章 索引
12.1 理解索引
12.1.1 什么時候使用索引
12.1.2 列的選擇
12.1.3 空值問題
12.2 索引結構類型
12.2.1 B-樹索引
12.2.2 位圖索引
12.2.3 索引組織表
12.3 分區索引
12.3.1 局部索引
12.3.2 全局索引
12.3.3 散列分區與范圍分區
12.4 與應用特點相匹配的解決方案
12.4.1 壓縮索引
12.4.2 基於函數的索引
12.4.3 反轉鍵索引
12.4.4 降序索引
12.5 管理問題的解決方案
12.5.1 不可見索引
12.5.2 虛擬索引
12.5.3 位圖聯結索引
12.6 小結第13章 SELECT以外的內容
13.1 INSERT
13.1.1 直接路徑插入
13.1.2 多表插入
13.1.3 條件插入
13.1.4 DML錯誤日志
13.2 UPDATE
13.2.1 CTAS與UPDATE的差別
13.2.2 INSERT APPEND與UPDATE的差別
13.3 DELETE
13.4 MERGE
13.4.1 語法和用法
13.4.2 性能比較
13.5 小結第14章 事務處理
14.1 什么是事務
14.2 事務的ACID屬性
14.3 事務隔離級別
14.4 多版本讀一致性
14.5 事務控制語句
14.5.1 Commit(提交)
14.5.2 Savepoint(保存點)
14.5.3 Rollback(回滾)
14.5.4 Set Transaction(設置事務)
14.5.5 Set Constraints(設置約束)
14.6 將運算分組為事務
14.7 訂單錄入模式
14.8 活動事務
14.9 使用保存點
14.10 序列化事務
14.11 隔離事務
14.12 自治事務
14.13 小結第15章 測試與質量保證
15.1 測試用例
15.2 測試方法
15.2.1 單元測試
15.2.2 回歸測試
15.2.3 模式修改
15.2.4 重復單元測試
15.3 執行計划比較
15.4 性能測量
15.4.1 在代碼中加入性能測量
15.4.2 性能測試
15.5 破壞性測試
15.6 使用性能測量進行系統檢修
15.7 小結第16章 計划穩定性
16.1 計划不穩定性:理解這個問題
16.1.1 統計信息的變化
16.1.2 運行環境的改變
16.1.3 SQL語句的改變
16.1.4 綁定變量窺視
16.1.5 自適應游標共享
16.2 統計信息反饋
16.3 識別執行計划的不穩定性
16.3.1 抓取當前運行查詢的數據
16.3.2 查看語句的性能歷史
16.3.3 按照執行計划聚合統計信息
16.3.4 尋找執行計划的統計方差
16.3.5 在一個時間點附近檢查偏差
16.4 小結第17章 計划控制
17.1 執行計划控制:解決問題
17.1.1 調整查詢結構
17.1.2 適當使用常量
17.1.3 給優化器一些提示
17.2 執行計划控制:不能直接訪問代碼
17.2.1 選項1:改變統計信息
17.2.2 選項2:改變數據庫參數
17.2.3 選項3:增加或移除訪問路徑
17.2.4 選項4:應用基於提示的執行計划控制機制
17.2.5 大綱
17.2.6 SQL概要文件
17.2.7 SQL執行計划基線
17.2.8 SQL補丁
17.2.9 基於提示的計划控制機理小結
17.3 小結第18章 其他SQL結構
18.1 條件邏輯結構
18.1.1 DECODE
18.1.2 CASE
18.1.3 NVL、NVL2和COALESCE
18.1.4 NULLIF
18.2 PIVOT/UNPIVOT查詢
18.2.1 PIVOT
18.2.2 UNPIVOT
18.3 生成測試數據的SQL
18.3.1 想要得到什么樣的數據
18.3.2 CONNECT BY
18.3.3 MODEL子句
18.3.4 遞歸WITH子句
18.3.5 數據生成小結
18.4 小結