II. SQL 語言

這一部分描述 PostgreSQL 裡面 SQL 語言的使用。我們從描述 SQL 的一般語法開始, 然後解釋如何創建保存數據的結構,如何填充數據庫,以及如何查詢數據庫。 中間部分列出了用戶可以在 SQL 數據命令中可用的數據類型和函數。 剩下的部分討論那些對調節數據庫,優化其性能很重要的幾個方面。

這一部分的信息是這樣安排的:新手可以從頭讀到尾, 便可以獲取有關主題的完整了解,而不需要向前引用太多的次數。 裡面的章節是設計成自包含的,這樣高級用戶就可以選擇獨立的章節來閱讀。 這部分的信息是按照主題單元以敘述的方式組織的。 如果你需要了解特定命令的完整描述,那麼應該看看 Part VI

本書的讀者應該知道如何與一個 PostgreSQL 數據庫連接並發出 SQL 命令。 我們建議那些不熟悉這些方面的讀者首先閱讀 Part I。 通常 SQL 命令是用 PostgreSQL 交互終端 psql 輸入的,但其它有類似功能的程序也可以使用。

Table of Contents
4. SQL 語法
4.1. 詞法結構
4.2. 值表達式
5. 數據定義
5.1. 表的基本概念
5.2. 系統字段
5.3. 缺省值
5.4. 約束
5.5. 繼承
5.6. 修改表
5.7. 權限
5.8. 模式
5.9. 其它數據庫對象
5.10. 依賴性追蹤
6. 數據操作
6.1. 插入數據
6.2. 更新數據
6.3. 刪除數據
7. 查詢
7.1. 概述
7.2. 表表達式
7.3. 選擇列表
7.4. 組合查詢
7.5. 行排序
7.6. LIMITOFFSET
8. 數據類型
8.1. 數值類型
8.2. 貨幣類型
8.3. 字符類型
8.4. 二進制數據類型
8.5. 日期/時間類型
8.6. 布爾類型
8.7. 幾何類型
8.8. 網絡地址數據類型
8.9. 位串類型
8.10. 數組
8.11. 對象標識符類型
8.12. 偽類型
9. 函數和操作符
9.1. 邏輯操作符
9.2. 比較操作符
9.3. 數學函數和操作符
9.4. 字符串函數和操作符
9.5. 二進制字串函數和操作符
9.6. 模式匹配
9.7. 數據類型格式化函數
9.8. 時間/日期函數和操作符
9.9. 幾何函數和操作符
9.10. 網絡地址類型函數
9.11. 序列操作函數
9.12. 條件表達式
9.13. 雜項函數
9.14. 數組函數和操作符
9.15. 聚集函數
9.16. 子查詢表達式
9.17. 行和數組比較
10. 類型轉換
10.1. 概述
10.2. 操作符
10.3. 函數
10.4. 值存儲
10.5. UNIONCASEARRAY構造
11. 索引
11.1. 介紹
11.2. 索引類型
11.3. 多字段索引
11.4. 唯一索引
11.5. 表達式上的索引
11.6. 操作符表
11.7. 部分索引
11.8. 檢查索引的使用
12. 並發控制
12.1. 介紹
12.2. 事務隔離
12.3. 明確鎖定
12.4. 應用層的數據完整性檢查
12.5. 鎖和索引
13. 性能提升技巧
13.1. 使用 EXPLAIN
13.2. 規劃器使用的統計信息
13.3. 用明確的 JOIN (連接)控制規劃器
13.4. 向數據庫中添加記錄