PostgreSQL 正體中文使用手冊
PostgreSQL.TW官方使用手冊小島故事加入社團
15
15
  • 簡介
  • 前言
    • 1. 什麼是 PostgreSQL?
    • 2. PostgreSQL 沿革
    • 3. 慣例
    • 4. 其他參考資訊
    • 5. 問題回報指南
  • I. 新手教學
    • 1. 入門指南
      • 1.1. 安裝
      • 1.2. 基礎架構
      • 1.3. 建立一個資料庫
      • 1.4. 存取一個資料庫
    • 2. SQL 查詢語言
      • 2.1. 簡介
      • 2.2. 概念
      • 2.3. 創建一個新的資料表
      • 2.4. 資料列是資料表的組成單位
      • 2.5. 資料表的查詢
      • 2.6. 交叉查詢
      • 2.7. 彙總查詢
      • 2.8. 更新資料
      • 2.9. 刪除資料
    • 3. 先進功能
      • 3.1. 簡介
      • 3.2. 檢視表(View)
      • 3.3. 外部索引鍵
      • 3.4. 交易安全
      • 3.5. 窗函數
      • 3.6. 繼承
      • 3.7. 結論
  • II. SQL 查詢語言
    • 4. SQL 語法
      • 4.1. 語法結構
      • 4.2. 參數表示式
      • 4.3. 函數呼叫
    • 5. 定義資料結構
      • 5.1. 認識資料表
      • 5.2. 預設值
      • 5.3. Generated Columns
      • 5.4. 限制條件
      • 5.5. 系統欄位
      • 5.6. 表格變更
      • 5.7. 權限
      • 5.8. 資料列安全原則
      • 5.9. Schemas
      • 5.10. 繼承
      • 5.11. 分割資料表
      • 5.12. 外部資料
      • 5.13. 其他資料庫物件
      • 5.14. 相依性追蹤
    • 6. 資料處理
      • 6.1. 新增資料
      • 6.2. 更新資料
      • 6.3. 刪除資料
      • 6.4. 修改並回傳資料
    • 7. 資料查詢
      • 7.1. 概觀
      • 7.2. 資料表表示式
      • 7.3. 取得資料列表
      • 7.4. 合併查詢結果
      • 7.5. 資料排序
      • 7.6. LIMIT 和 OFFSET
      • 7.7. VALUES 列舉資料
      • 7.8. WITH Querys(Common Table Expressions)
    • 8. 資料型別
      • 8.1. 數字型別
      • 8.2. 貨幣型別
      • 8.3. 字串型別
      • 8.4. 位元組型別(bytea)
      • 8.5. 日期時間型別
      • 8.6. 布林型別
      • 8.7. 列舉型別
      • 8.8. 地理資訊型別
      • 8.9. 網路資訊型別
      • 8.10. 位元字串型別
      • 8.11. 全文檢索型別
      • 8.12. UUID 型別
      • 8.13. XML 型別
      • 8.14. JSON 型別
      • 8.15. 陣列
      • 8.16. 複合型別
      • 8.17. 範圍型別
      • 8.18. Domain Types
      • 8.19. 物件指標型別
      • 8.20. pg_lsn 型別
      • 8.21. 概念型別
    • 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. UUID Functions
      • 9.15. XML 函式
      • 9.16. JSON 函式及運算子
      • 9.17. 序列函式
      • 9.18. 條件表示式
      • 9.19. 陣列函式及運算子
      • 9.20. 範圍函式及運算子
      • 9.21. 彙總函數
      • 9.22. Window 函式
      • 9.23. 子查詢
      • 9.24. 資料列與陣列的比較運算
      • 9.25. 集合回傳函數
      • 9.26. 系統資訊函數
      • 9.27. 系統管理函式
      • 9.28. 觸發函式
      • 9.29. 事件觸發函式
      • 9.30. Statistics Information Functions
    • 10. 型別轉換
      • 10.1. 概觀
      • 10.2. 運算子
      • 10.3. 函式
      • 10.4. 資料儲存轉換規則
      • 10.5. UNION、CASE 等相關結構
      • 10.6. SELECT 輸出規則
    • 11. 索引(Index)
      • 11.1. 簡介
      • 11.2. 索引型別
      • 11.3. 多欄位索引
      • 11.4. 索引與 ORDER BY
      • 11.5. 善用多個索引
      • 11.6. 唯一值索引
      • 11.7. 表示式索引
      • 11.8. 部份索引(partial index)
      • 11.9. Index-Only Scans and Covering Indexes
      • 11.10. 運算子物件及家族
      • 11.11. 索引與排序規則
      • 11.12. 檢查索引運用
    • 12. 全文檢索
      • 12.1. 簡介
      • 12.2. 查詢與索引
      • 12.3. 細部控制
      • 12.4. 延伸功能
      • 12.5. 斷詞
      • 12.6. 字典
      • 12.7. 組態範例
      • 12.8. 測試與除錯
      • 12.9. GIN 及 GiST 索引型別
      • 12.10. psql支援
      • 12.11. 功能限制
    • 13. 一致性管理(Concurrency Control)
      • 13.1. 簡介
      • 13.2. 交易隔離
      • 13.3. 鎖定模式
      • 13.4. 在應用端檢視資料一致性
      • 13.5. Serialization Failure Handling
      • 13.6. 特別提醒
      • 13.7. 鎖定與索引
    • 14. 效能技巧
      • 14.1. 善用 EXPLAIN
      • 14.2. 統計資訊
      • 14.3. 使用確切的 JOIN 方式
      • 14.4. 快速建立資料庫內容
      • 14.5. 風險性彈性設定
    • 15. 平行查詢
      • 15.1. 如何運作?
      • 15.2. 啓用時機?
      • 15.3. 平行查詢計畫
      • 15.4. 平行查詢的安全性
  • III. 系統管理
    • 16. 以預編譯套件安裝
    • 17. 以原始碼安裝
      • 17.1. 簡要步驟
      • 17.2. 環境需求
      • 17.3. Getting The Source
      • 17.4. 安裝流程
      • 17.5. Post-Installation Setup
      • 17.6. Supported Platforms
      • 17.7. 平台相關的注意事項
    • 18. 以原始碼在 Windows 上安裝
      • 18.1. Building with Visual C++ or the Microsoft Windows SDK
    • 19. 服務配置與維運
      • 19.1. PostgreSQL 使用者帳號
      • 19.2. Creating a Database Cluster
      • 19.3. Starting the Database Server
      • 19.4. 核心資源管理
      • 19.5. Shutting Down the Server
      • 19.6. Upgrading a PostgreSQL Cluster
      • 19.7. Preventing Server Spoofing
      • 19.8. Encryption Options
      • 19.9. Secure TCP/IP Connections with SSL
      • 19.10. Secure TCP/IP Connections with GSSAPI Encryption
      • 19.11. Secure TCP/IP Connections with SSH Tunnels
      • 19.12. 在 Windows 註冊事件日誌
    • 20. 服務組態設定
      • 20.1. Setting Parameters
      • 20.2. File Locations
      • 20.3. 連線與認證
      • 20.4. 資源配置
      • 20.5. Write Ahead Log
      • 20.6. 複寫(Replication)
      • 20.7. 查詢規畫
      • 20.8. 錯誤回報與日誌記錄
      • 20.9. 執行階段統計資訊
      • 20.10. 自動資料庫清理
      • 20.11. 用戶端連線預設參數
      • 20.12. 交易鎖定管理
      • 20.13. 版本與平台的相容性
      • 20.14. Error Handling
      • 20.15. 預先配置的參數
      • 20.16. Customized Options
      • 20.17. Developer Options
      • 20.18. Short Options
    • 21. 使用者認證
      • 21.1. 設定檔:pg_hba.conf
      • 21.2. User Name Maps
      • 21.3. Authentication Methods
      • 21.4. Trust Authentication
      • 21.5. Password Authentication
      • 21.6. GSSAPI Authentication
      • 21.7. SSPI Authentication
      • 21.8. Ident Authentication
      • 21.9. Peer Authentication
      • 21.10. LDAP Authentication
      • 21.11. RADIUS Authentication
      • 21.12. Certificate Authentication
      • 21.13. PAM Authentication
      • 21.14. BSD Authentication
      • 21.15. Authentication Problems
    • 22. 資料庫角色
      • 22.1. Database Roles
      • 22.2. Role Attributes
      • 22.3. Role Membership
      • 22.4. 移除角色
      • 22.5. Default Roles
      • 22.6. Function Security
    • 23. 管理資料庫
      • 23.1. Overview
      • 23.2. Creating a Database
      • 23.3. 樣版資料庫
      • 23.4. Database Configuration
      • 23.5. Destroying a Database
      • 23.6. Tablespaces
    • 24. 語系
      • 24.1. 語系支援
      • 24.2. Collation Support
      • 24.3. 字元集支援
    • 25. 例行性資料庫維護工作
      • 25.1. 例行性資料清理
      • 25.2. 定期重建索引
      • 25.3. Log 檔案維護
    • 26. 備份及還原
      • 26.1. SQL Dump
      • 26.2. 檔案系統層級備份
      • 26.3. 持續封存及 Point-in-Time Recovery (PITR)
    • 27. High Availability, Load Balancing, and Replication
      • 27.1. 比較不同的解決方案
      • 27.2. 日誌轉送備用伺服器 Log-Shipping Standby Servers
      • 27.3. Failover
      • 27.4. Hot Standby
    • 28. 監控資料庫活動
      • 28.1. 標準的 Unix 工具
      • 28.2. 統計資訊收集器
      • 28.3. Viewing Locks
      • 28.4. Progress Reporting
      • 28.5. Dynamic Tracing
    • 29. 監控磁碟使用情況
      • 29.1. 瞭解磁碟使用情形
      • 29.2. 磁碟空間不足錯誤
    • 30. 高可靠度及預寫日誌
      • 30.1. 可靠度
      • 30.2. Data Checksums
      • 30.3. Write-Ahead Logging(WAL)
      • 30.4. Asynchronous Commit
      • 30.5. WAL Configuration
      • 30.6. WAL Internals
    • 31. 邏輯複寫(Logical Replication)
      • 31.1. 發佈(Publication)
      • 31.2. 訂閱(Subscription)
      • 31.3. Row Filters
      • 31.4. Column Lists
      • 31.5. 衝突處理
      • 31.6. 限制
      • 31.7. 架構
      • 31.8. 監控
      • 31.9. 安全性
      • 31.10. 系統設定
      • 31.11. 快速設定
    • 32. Just-in-Time Compilation(JIT)
      • 32.1. What is JIT compilation?
      • 32.2. When to JIT?
      • 32.3. Configuration
      • 32.4. Extensibility
    • 33. 迴歸測試
      • 33.1. Running the Tests
      • 33.2. Test Evaluation
      • 33.3. Variant Comparison Files
      • 33.4. TAP Tests
      • 33.5. Test Coverage Examination
  • IV. 用戶端介面
    • 34. libpq - C Library
      • 33.1. 資料庫連線控制函數
      • 33.2. 連線狀態函數
      • 33.3. Command Execution Functions
      • 33.4. Asynchronous Command Processing
      • 33.5. Retrieving Query Results Row-By-Row
      • 33.6. Canceling Queries in Progress
      • 33.7. The Fast-Path Interface
      • 33.8. Asynchronous Notification
      • 33.9. Functions Associated with the COPY Command
      • 33.10. Control Functions
      • 33.11. Miscellaneous Functions
      • 33.12. Notice Processing
      • 33.13. Event System
      • 33.14. 環境變數
      • 34.16. 密碼檔
      • 33.16. The Connection Service File
      • 33.17. LDAP Lookup of Connection Parameters
      • 33.18. SSL Support
      • 33.19. Behavior in Threaded Programs
      • 33.20. Building libpq Programs
      • 33.21. Example Programs
    • 35. Large Objects
      • 35.1. Introduction
      • 35.2. Implementation Features
      • 35.3. Client Interfaces
      • 35.4. Server-side Functions
      • 35.5. Example Program
    • 36. ECPG - Embedded SQL in C
      • 35.1. The Concept
      • 35.2. Managing Database Connections
      • 35.3. Running SQL Commands
      • 35.4. Using Host Variables
      • 35.5. Dynamic SQL
      • 35.6. pgtypes Library
      • 35.7. Using Descriptor Areas
      • 35.8. Error Handling
      • 35.9. Preprocessor Directives
      • 35.10. Processing Embedded SQL Programs
      • 35.11. Library Functions
      • 35.12. Large Objects
      • 35.13. C++ Applications
      • 35.14. Embedded SQL Commands
      • 35.15. Informix Compatibility Mode
      • 35.16. Internals
    • 37. The Information Schema
      • 37.1. The Schema
      • 37.2. Data Types
      • 37.3. information_schema_catalog_name
      • 37.4. administrable_role_authorizations
      • 37.5. applicable_roles
      • 37.7. attributes
      • 37.7. character_sets
      • 37.8. check_constraint_routine_usage
      • 37.9. check_constraints
      • 37.10. collations
      • 37.11. collation_character_set_applicability
      • 37.12. column_column_usage
      • 37.13. column_domain_usage
      • 37.14. column_options
      • 37.15. column_privileges
      • 37.16. column_udt_usage
      • 37.17. columns
      • 37.18. constraint_column_usage
      • 37.19. constraint_table_usage
      • 37.20. data_type_privileges
      • 37.21. domain_constraints
      • 37.21. domain_udt_usage
      • 37.22. domains
      • 37.23. element_types
      • 37.24. enabled_roles
      • 37.25. foreign_data_wrapper_options
      • 37.26. foreign_data_wrappers
      • 37.27. foreign_server_options
      • 37.28. foreign_servers
      • 37.29. foreign_table_options
      • 37.30. foreign_tables
      • 36.32. key_column_usage
      • 37.33. parameters
      • 36.34. referential_constraints
      • 37.34. role_column_grants
      • 37.35. role_routine_grants
      • 37.37. role_table_grants
      • 37.38. role_udt_grants
      • 37.39. role_usage_grants
      • 37.40. routine_column_usage
      • 37.41. routine_privileges
      • 37.45. routines
      • 37.46. schemata
      • 37.47. sequences
      • 37.48. sql_features
      • 37.49. sql_implementation_info
      • 37.50. sql_parts
      • 37.51. sql_sizing
      • 36.51. table_constraints
      • 36.49. table_privileges
      • 37.52. tables
      • 37.53. transforms
      • 37.54. triggered_update_columns
      • 37.55. triggers
      • 37.56. udt_privileges
      • 37.57. usage_privileges
      • 37.58. user_defined_types
      • 37.59. user_mapping_options
      • 37.60. user_mappings
      • 37.63. view_column_usage
      • 37.64. view_routine_usage
      • 37.65. view_table_usage
      • 37.66. views
  • V. 資料庫程式設計
    • 38. SQL 延伸功能
      • 38.1. How Extensibility Works
      • 38.2. The PostgreSQL Type System
      • 38.3. 使用者自訂函數
      • 38.4. User-defined Procedures
      • 38.5. Query Language (SQL) Functions
      • 38.6. Function Overloading
      • 38.7. 函數易變性類別
      • 38.8. Procedural Language Functions
      • 38.9. Internal Functions
      • 38.10. C-Language Functions
      • 38.11. Function Optimization Information
      • 38.12. User-defined Aggregates
      • 38.13. User-defined Types
      • 38.14. User-defined Operators
      • 38.15. Operator Optimization Information
      • 38.16. Interfacing Extensions To Indexes
      • 38.17. 封裝相關物件到延伸功能中
      • 38.18. Extension Building Infrastructure
    • 39. Triggers
      • 39.1. Overview of Trigger Behavior
      • 39.2. Visibility of Data Changes
      • 39.3. Writing Trigger Functions in C
      • 39.4. A Complete Trigger Example
    • 40. Event Triggers (事件觸發)
      • 40.1. Overview of Event Trigger Behavior
      • 40.2. Event Trigger Firing Matrix
      • 40.3. Writing Event Trigger Functions in C
      • 40.4. A Complete Event Trigger Example
    • 41. 規則系統
      • 41.1. The Query Tree
      • 41.2. Views and the Rule System
      • 41.3. Materialized Views
      • 41.4. Rules on INSERT, UPDATE, and DELETE
      • 41.5. 規則及權限
      • 41.6. Rules and Command Status
      • 41.7. Rules Versus Triggers
    • 42. Procedural Languages(程序語言)
      • 42.1. Installing Procedural Languages
    • 43. PL/pgSQL - SQL Procedural Language
      • 43.1. Overview
      • 43.2. Structure of PL/pgSQL
      • 43.3. Declarations
      • 43.4. Expressions
      • 43.5. 基本語法
      • 43.6. Control Structures
      • 43.7. Cursors
      • 43.8. Transaction Management
      • 43.9. Errors and Messages
      • 43.10. Trigger Functions
      • 43.11. PL/pgSQL under the Hood
      • 43.12. Tips for Developing in PL/pgSQL
      • 43.13. Porting from Oracle PL/SQL
    • 44. PL/Tcl - Tcl Procedural Language
    • 45. PL/Perl — Perl Procedural Language
    • 46. PL/Python - Python Procedural Language
      • 46.1. PL/Python Functions
      • 46.2. Data Values
      • 46.3. Sharing Data
      • 46.4. Anonymous Code Blocks
      • 46.5. Trigger Functions
      • 46.6. Database Access
      • 46.7. Explicit Subtransactions
      • 46.8. Transaction Management
      • 46.9. Utility Functions
      • 46.10. Python 2 vs. Python 3
      • 46.11. Environment Variables
    • 47. Server Programming Interface
    • 48. Background Worker Processes
    • 49. Logical Decoding
      • 48.1. Logical Decoding Examples
      • 48.2. Logical Decoding Concepts
      • 48.3. Streaming Replication Protocol Interface
      • 48.4. Logical Decoding SQL Interface
      • 48.5. System Catalogs Related to Logical Decoding
      • 48.6. Logical Decoding Output Plugins
      • 48.7. Logical Decoding Output Writers
      • 48.8. Synchronous Replication Support for Logical Decoding
    • 50. Replication Progress Tracking
    • 51. Archive Modules
      • 51.1. Initialization Functions
      • 51.2. Archive Module Callbacks
  • VI. 參考資訊
    • I. SQL 指令
      • ALTER DATABASE
      • ALTER DEFAULT PRIVILEGES
      • ALTER EXTENSION
      • ALTER FUNCTION
      • ALTER INDEX
      • ALTER LANGUAGE
      • ALTER MATERIALIZED VIEW
      • ALTER POLICY
      • ALTER PUBLICATION
      • ALTER ROLE
      • ALTER RULE
      • ALTER SCHEMA
      • ALTER SEQUENCE
      • ALTER STATISTICS
      • ALTER SUBSCRIPTION
      • ALTER SYSTEM
      • ALTER TABLE
      • ALTER TABLESPACE
      • ALTER TRIGGER
      • ALTER TYPE
      • ALTER USER
      • ALTER VIEW
      • ANALYZE
      • CLUSTER
      • COMMENT
      • COMMIT PREPARED
      • COPY
      • CREATE ACCESS METHOD
      • CREATE CAST
      • CREATE DATABASE
      • CREATE EVENT TRIGGER
      • CREATE EXTENSION
      • CREATE FOREIGN TABLE
      • CREATE FOREIGN DATA WRAPPER
      • CREATE FUNCTION
      • CREATE INDEX
      • CREATE LANGUAGE
      • CREATE MATERIALIZED VIEW
      • CREATE DOMAIN
      • CREATE POLICY
      • CREATE PROCEDURE
      • CREATE PUBLICATION
      • CREATE ROLE
      • CREATE RULE
      • CREATE SCHEMA
      • CREATE SEQUENCE
      • CREATE SERVER
      • CREATE STATISTICS
      • CREATE SUBSCRIPTION
      • CREATE TABLE
      • CREATE TABLE AS
      • CREATE TABLESPACE
      • CREATE TRANSFORM
      • CREATE TRIGGER
      • CREATE TYPE
      • CREATE USER
      • CREATE USER MAPPING
      • CREATE VIEW
      • DEALLOCATE
      • DELETE
      • DO
      • DROP ACCESS METHOD
      • DROP DATABASE
      • DROP EXTENSION
      • DROP FUNCTION
      • DROP INDEX
      • DROP LANGUAGE
      • DROP MATERIALIZED VIEW
      • DROP OWNED
      • DROP POLICY
      • DROP PUBLICATION
      • DROP ROLE
      • DROP RULE
      • DROP SCHEMA
      • DROP SEQUENCE
      • DROP STATISTICS
      • DROP SUBSCRIPTION
      • DROP TABLE
      • DROP TABLESPACE
      • DROP TRANSFORM
      • DROP TRIGGER
      • DROP TYPE
      • DROP USER
      • DROP VIEW
      • EXECUTE
      • EXPLAIN
      • GRANT
      • IMPORT FOREIGN SCHEMA
      • INSERT
      • LISTEN
      • LOAD
      • MERGE
      • NOTIFY
      • PREPARE
      • PREPARE TRANSACTION
      • REASSIGN OWNED
      • REFRESH MATERIALIZED VIEW
      • REINDEX
      • RESET
      • REVOKE
      • ROLLBACK PREPARED
      • SECURITY LABEL
      • SELECT
      • SELECT INTO
      • SET
      • SET CONSTRAINTS
      • SET ROLE
      • SET SESSION AUTHORIZATION
      • SET TRANSACTION
      • SHOW
      • TRUNCATE
      • UNLISTEN
      • UPDATE
      • VACUUM
      • VALUES
    • II. PostgreSQL 用戶端工具
      • createdb
      • createuser
      • dropdb
      • dropuser
      • oid2name
      • pgbench
      • pg_basebackup
      • pg_dump
      • pg_dumpall
      • pg_isready
      • pg_receivewal
      • pg_recvlogical
      • pg_restore
      • pg_verifybackup
      • psql
      • vacuumdb
    • III. PostgreSQL 伺服器應用程式
      • initdb
      • pg_archivecleanup
      • pg_ctl
      • pg_standby
      • pg_test_fsync
      • pg_test_timing
      • pg_upgrade
      • postgres
  • VII. 資料庫進階
    • 52. PostgreSQL 的內部架構
      • 52.1. 處理查詢語句的流程
      • 52.2. How Connections Are Established
      • 52.3. The Parser Stage
      • 52.4. The PostgreSQL Rule System
      • 52.5. Planner/Optimizer
      • 52.6. Executor
    • 53. 系統資訊目錄
      • 51.3. pg_am
      • 51.7. pg_attribute
      • 51.8. pg_authid
      • 51.9. pg_auth_members
      • 51.10. pg_cast
      • 51.11 pg_class
      • 51.12. pg_collation
      • 51.13. pg_constraint
      • 51.15 pg_database
      • 51.21. pg_event_trigger
      • 51.22. pg_extension
      • 51.26 pg_index
      • 51.29. pg_language
      • 51.32. pg_namespace
      • 51.33. pg_opclass
      • 51.38. pg_policy
      • 51.39. pg_proc
      • 51.44. pg_rewrite
      • 51.49. pg_statistic
      • 51.50. pg_statistic_ext
      • 51.52. pg_subscription
      • 51.53. pg_subscription_rel
      • 51.54. pg_tablespace
      • 51.56. pg_trigger
      • 51.62. pg_type
      • 51.66. pg_available_extensions
      • 51.67. pg_available_extension_versions
      • 51.71. pg_hba_file_rules
      • 51.72. pg_indexes
      • 51.73. pg_locks
      • 51.77. pg_prepared_xacts
      • 51.79. pg_replication_origin_status
    • 54. System Views
      • 54.1. Overview
      • 54.19. pg_replication_slots
      • 54.20 pg_roles
      • 54.24. pg_settings
      • 54.25. pg_shadow
      • 54.26. pg_shmem_allocations
      • 54.27. pg_stats
      • 54.30. pg_tables
      • 54.31. pg_timezone_abbrevs
      • 54.32. pg_timezone_names
      • 54.33. pg_user
      • 54.35. pg_views
    • 55. Frontend/Backend Protocol
      • 52.1. Overview
      • 52.2. Message Flow
      • 52.3. SASL Authentication
      • 52.4. Streaming Replication Protocol
      • 52.5. Logical Streaming Replication Protocol
      • 52.6. Message Data Types
      • 52.7. Message Formats
      • 52.8. Error and Notice Message Fields
      • 52.9. Logical Replication Message Formats
      • 52.10. Summary of Changes since Protocol 2.0
    • 56. PostgreSQL 程式撰寫慣例
      • 53.1. Formatting
      • 53.2. Reporting Errors Within the Server
      • 53.3. Error Message Style Guide
      • 53.4. Miscellaneous Coding Conventions
    • 57. Native Language Support
      • 54.1. For the Translator
      • 54.2. For the Programmer
    • 58. 撰寫程序語言的處理程序
    • 59. Writing a Foreign Data Wrapper
      • 56.1. Foreign Data Wrapper Functions
      • 56.2. Foreign Data Wrapper Callback Routines
      • 56.3. Foreign Data Wrapper Helper Functions
      • 56.4. Foreign Data Wrapper Query Planning
      • 56.5. Row Locking in Foreign Data Wrappers
    • 60. Writing a Table Sampling Method
    • 61. Writing a Custom Scan Provider
    • 62. Genetic Query Optimizer
      • 59.1. Query Handling as a Complex Optimization Problem
      • 59.2. Genetic Algorithms
      • 59.3. Genetic Query Optimization (GEQO) in PostgreSQL
      • 59.4. Further Reading
    • 63. Table Access Method Interface Definition
    • 64. Index Access Method Interface Definition
    • 65. Generic WAL Records
    • 66. Custom WAL Resource Managers
    • 67. B-Tree Indexes
      • 67.1. Introduction
      • 67.2. Behavior of B-Tree Operator Classes
      • 67.3. B-Tree Support Functions
      • 67.4. Implementation
    • 68. GiST Indexes
      • 64.1. Introduction
      • 64.2. Built-in Operator Classes
      • 64.3. Extensibility
      • 64.4. Implementation
      • 64.5. Examples
    • 69. SP-GiST Indexes
      • 65.1. Introduction
      • 65.2. Built-in Operator Classes
      • 65.3. Extensibility
      • 65.4. Implementation
      • 65.5. Examples
    • 70. GIN 索引
      • 70.1. 簡介
      • 70.2. 內建運算子類
      • 70.3. 延伸介面
      • 70.4. 實作說明
      • 70.5. GIN 小技巧
      • 70.6. 限制
      • 70.7. 範例
    • 71. BRIN Indexes
      • 67.1. Introduction
      • 67.2. Built-in Operator Classes
      • 67.3. Extensibility
    • 72. Hash Indexes
    • 73. 資料庫實體儲存格式
      • 73.1. Database File Layout
      • 73.3. TOAST
      • 68.3. Free Space Map
      • 68.4 可視性映射表(Visibility Map)
      • 68.5. The Initialization Fork
      • 68.6. Database Page Layout
    • 74. System Catalog Declarations and Initial Contents
    • 75. 查詢計畫如何使用統計資訊
      • 70.1. Row Estimation Examples
      • 70.2. 多元統計資訊範例
      • 70.3. Planner Statistics and Security
    • 76. Backup Manifest Format
  • VIII. 附錄
    • A. PostgreSQL 錯誤代碼
    • B. 日期時間格式支援
      • B.1. 日期時間解譯流程
      • B.2. Handling of Invalid or Ambiguous Timestamps
      • B.3. 日期時間慣用字
      • B.4. 日期時間設定檔
      • B.5. POSIX Time Zone Specifications
      • B.6. 日期時間的沿革
      • B.7. Julian Dates
    • C. SQL 關鍵字
    • D. SQL 相容性
      • D.1. Supported Features
      • D.2. Unsupported Features
      • D.3. XML Limits and Conformance to SQL/XML
    • E. 版本資訊
      • E.1. Release 15.2
      • E.2. Release 15.1
      • E.3. Release 15
      • E.4. Prior Releases
    • F. 延伸支援模組
      • F.1. adminpack
      • F.2. amcheck
      • F.3. auth_delay
      • F.4. auto_explain
      • F.5. bloom
      • F.6. btree_gin
      • F.10. dblink
        • dblink_connect
        • dblink_connect_u
        • dblink_disconnect
        • dblink
        • dblink_exec
        • dblink_open
        • dblink_fetch
        • dblink_close
        • dblink_get_connections
        • dblink_error_message
        • dblink_send_query
        • dblink_is_busy
        • dblink_get_notify
        • dblink_get_result
        • dblink_cancel_query
        • dblink_get_pkey
        • dblink_build_sql_insert
        • dblink_build_sql_delete
        • dblink_build_sql_update
      • F.13. earthdistance
      • F.14. file_fdw
      • F.16. hstore
      • F.24. pg_buffercache
      • F.26. passwordcheck
      • F.29. pg_stat_statements
      • F.30. pgstattuple
      • F.31. pg_trgm
      • F.32. pg_visibility
      • F.38. postgres_fdw
      • F.35. sepgsql
      • F.43. tablefunc
      • F.45. test_decoding
      • F.46. tsm_system_rows
      • F.47. tsm_system_time
      • F.49. uuid-ossp
    • G. Additional Supplied Programs
      • G.1. Client Applications
        • oid2name
        • vacuumlo
      • G.2. Server Applications
        • pg_standby
    • H. 外部專案
      • H.1. 用戶端介面
      • H.2. Administration Tools
      • H.3. Procedural Languages
      • H.4. Extensions
    • I. The Source Code Repository
      • I.1. Getting The Source via Git
    • J. 文件取得
      • J.1. DocBook
      • J.2. Tool Sets
      • J.3. Building the Documentation
      • J.4. Documentation Authoring
      • J.5. Style Guide
    • K. PostgreSQL Limits
    • L. 縮寫字
    • M. Glossary
    • N. 色彩支援
      • N.1. When Color is Used
      • N.2. Configuring the Colors
    • O. Obsolete or Renamed Features
  • 參考書目
Powered by GitBook
On this page

Was this helpful?

Edit on GitHub
Export as PDF
  1. VIII. 附錄
  2. D. SQL 相容性

D.1. Supported Features

Identifier
Core?
Description
Comment

B012

Embedded C

B021

Direct SQL

B128

Routine language SQL

E011

Core

Numeric data types

E011-01

Core

INTEGER and SMALLINT data types

E011-02

Core

REAL, DOUBLE PRECISION, and FLOAT data types

E011-03

Core

DECIMAL and NUMERIC data types

E011-04

Core

Arithmetic operators

E011-05

Core

Numeric comparison

E011-06

Core

Implicit casting among the numeric data types

E021

Core

Character data types

E021-01

Core

CHARACTER data type

E021-02

Core

CHARACTER VARYING data type

E021-03

Core

Character literals

E021-04

Core

CHARACTER_LENGTH function

trims trailing spaces from CHARACTER values before counting

E021-05

Core

OCTET_LENGTH function

E021-06

Core

SUBSTRING function

E021-07

Core

Character concatenation

E021-08

Core

UPPER and LOWER functions

E021-09

Core

TRIM function

E021-10

Core

Implicit casting among the character string types

E021-11

Core

POSITION function

E021-12

Core

Character comparison

E031

Core

Identifiers

E031-01

Core

Delimited identifiers

E031-02

Core

Lower case identifiers

E031-03

Core

Trailing underscore

E051

Core

Basic query specification

E051-01

Core

SELECT DISTINCT

E051-02

Core

GROUP BY clause

E051-04

Core

GROUP BY can contain columns not in <select list>

E051-05

Core

Select list items can be renamed

E051-06

Core

HAVING clause

E051-07

Core

Qualified * in select list

E051-08

Core

Correlation names in the FROM clause

E051-09

Core

Rename columns in the FROM clause

E061

Core

Basic predicates and search conditions

E061-01

Core

Comparison predicate

E061-02

Core

BETWEEN predicate

E061-03

Core

IN predicate with list of values

E061-04

Core

LIKE predicate

E061-05

Core

LIKE predicate ESCAPE clause

E061-06

Core

NULL predicate

E061-07

Core

Quantified comparison predicate

E061-08

Core

EXISTS predicate

E061-09

Core

Subqueries in comparison predicate

E061-11

Core

Subqueries in IN predicate

E061-12

Core

Subqueries in quantified comparison predicate

E061-13

Core

Correlated subqueries

E061-14

Core

Search condition

E071

Core

Basic query expressions

E071-01

Core

UNION DISTINCT table operator

E071-02

Core

UNION ALL table operator

E071-03

Core

EXCEPT DISTINCT table operator

E071-05

Core

Columns combined via table operators need not have exactly the same data type

E071-06

Core

Table operators in subqueries

E081

Core

Basic Privileges

E081-01

Core

SELECT privilege

E081-02

Core

DELETE privilege

E081-03

Core

INSERT privilege at the table level

E081-04

Core

UPDATE privilege at the table level

E081-05

Core

UPDATE privilege at the column level

E081-06

Core

REFERENCES privilege at the table level

E081-07

Core

REFERENCES privilege at the column level

E081-08

Core

WITH GRANT OPTION

E081-09

Core

USAGE privilege

E081-10

Core

EXECUTE privilege

E091

Core

Set functions

E091-01

Core

AVG

E091-02

Core

COUNT

E091-03

Core

MAX

E091-04

Core

MIN

E091-05

Core

SUM

E091-06

Core

ALL quantifier

E091-07

Core

DISTINCT quantifier

E101

Core

Basic data manipulation

E101-01

Core

INSERT statement

E101-03

Core

Searched UPDATE statement

E101-04

Core

Searched DELETE statement

E111

Core

Single row SELECT statement

E121

Core

Basic cursor support

E121-01

Core

DECLARE CURSOR

E121-02

Core

ORDER BY columns need not be in select list

E121-03

Core

Value expressions in ORDER BY clause

E121-04

Core

OPEN statement

E121-06

Core

Positioned UPDATE statement

E121-07

Core

Positioned DELETE statement

E121-08

Core

CLOSE statement

E121-10

Core

FETCH statement implicit NEXT

E121-17

Core

WITH HOLD cursors

E131

Core

Null value support (nulls in lieu of values)

E141

Core

Basic integrity constraints

E141-01

Core

NOT NULL constraints

E141-02

Core

UNIQUE constraints of NOT NULL columns

E141-03

Core

PRIMARY KEY constraints

E141-04

Core

Basic FOREIGN KEY constraint with the NO ACTION default for both referential delete action and referential update action

E141-06

Core

CHECK constraints

E141-07

Core

Column defaults

E141-08

Core

NOT NULL inferred on PRIMARY KEY

E141-10

Core

Names in a foreign key can be specified in any order

E151

Core

Transaction support

E151-01

Core

COMMIT statement

E151-02

Core

ROLLBACK statement

E152

Core

Basic SET TRANSACTION statement

E152-01

Core

SET TRANSACTION statement: ISOLATION LEVEL SERIALIZABLE clause

E152-02

Core

SET TRANSACTION statement: READ ONLY and READ WRITE clauses

E153

Core

Updatable queries with subqueries

E161

Core

SQL comments using leading double minus

E171

Core

SQLSTATE support

E182

Core

Host language binding

F021

Core

Basic information schema

F021-01

Core

COLUMNS view

F021-02

Core

TABLES view

F021-03

Core

VIEWS view

F021-04

Core

TABLE_CONSTRAINTS view

F021-05

Core

REFERENTIAL_CONSTRAINTS view

F021-06

Core

CHECK_CONSTRAINTS view

F031

Core

Basic schema manipulation

F031-01

Core

CREATE TABLE statement to create persistent base tables

F031-02

Core

CREATE VIEW statement

F031-03

Core

GRANT statement

F031-04

Core

ALTER TABLE statement: ADD COLUMN clause

F031-13

Core

DROP TABLE statement: RESTRICT clause

F031-16

Core

DROP VIEW statement: RESTRICT clause

F031-19

Core

REVOKE statement: RESTRICT clause

F032

CASCADE drop behavior

F033

ALTER TABLE statement: DROP COLUMN clause

F034

Extended REVOKE statement

F034-01

REVOKE statement performed by other than the owner of a schema object

F034-02

REVOKE statement: GRANT OPTION FOR clause

F034-03

REVOKE statement to revoke a privilege that the grantee has WITH GRANT OPTION

F041

Core

Basic joined table

F041-01

Core

Inner join (but not necessarily the INNER keyword)

F041-02

Core

INNER keyword

F041-03

Core

LEFT OUTER JOIN

F041-04

Core

RIGHT OUTER JOIN

F041-05

Core

Outer joins can be nested

F041-07

Core

The inner table in a left or right outer join can also be used in an inner join

F041-08

Core

All comparison operators are supported (rather than just =)

F051

Core

Basic date and time

F051-01

Core

DATE data type (including support of DATE literal)

F051-02

Core

TIME data type (including support of TIME literal) with fractional seconds precision of at least 0

F051-03

Core

TIMESTAMP data type (including support of TIMESTAMP literal) with fractional seconds precision of at least 0 and 6

F051-04

Core

Comparison predicate on DATE, TIME, and TIMESTAMP data types

F051-05

Core

Explicit CAST between datetime types and character string types

F051-06

Core

CURRENT_DATE

F051-07

Core

LOCALTIME

F051-08

Core

LOCALTIMESTAMP

F052

Intervals and datetime arithmetic

F053

OVERLAPS predicate

F081

Core

UNION and EXCEPT in views

F111

Isolation levels other than SERIALIZABLE

F111-01

READ UNCOMMITTED isolation level

F111-02

READ COMMITTED isolation level

F111-03

REPEATABLE READ isolation level

F131

Core

Grouped operations

F131-01

Core

WHERE, GROUP BY, and HAVING clauses supported in queries with grouped views

F131-02

Core

Multiple tables supported in queries with grouped views

F131-03

Core

Set functions supported in queries with grouped views

F131-04

Core

Subqueries with GROUP BY and HAVING clauses and grouped views

F131-05

Core

Single row SELECT with GROUP BY and HAVING clauses and grouped views

F171

Multiple schemas per user

F181

Core

Multiple module support

F191

Referential delete actions

F200

TRUNCATE TABLE statement

F201

Core

CAST function

F202

TRUNCATE TABLE: identity column restart option

F221

Core

Explicit defaults

F222

INSERT statement: DEFAULT VALUES clause

F231

Privilege tables

F231-01

TABLE_PRIVILEGES view

F231-02

COLUMN_PRIVILEGES view

F231-03

USAGE_PRIVILEGES view

F251

Domain support

F261

Core

CASE expression

F261-01

Core

Simple CASE

F261-02

Core

Searched CASE

F261-03

Core

NULLIF

F261-04

Core

COALESCE

F262

Extended CASE expression

F271

Compound character literals

F281

LIKE enhancements

F292

UNIQUE null treatment

SQL:202x draft

F302

INTERSECT table operator

F302-01

INTERSECT DISTINCT table operator

F302-02

INTERSECT ALL table operator

F304

EXCEPT ALL table operator

F311

Core

Schema definition statement

F311-01

Core

CREATE SCHEMA

F311-02

Core

CREATE TABLE for persistent base tables

F311-03

Core

CREATE VIEW

F311-04

Core

CREATE VIEW: WITH CHECK OPTION

F311-05

Core

GRANT statement

F312

MERGE statement

F313

Enhanced MERGE statement

F314

MERGE statement with DELETE branch

F321

User authorization

F341

Usage tables

F361

Subprogram support

F381

Extended schema manipulation

F381-01

ALTER TABLE statement: ALTER COLUMN clause

F381-02

ALTER TABLE statement: ADD CONSTRAINT clause

F381-03

ALTER TABLE statement: DROP CONSTRAINT clause

F382

Alter column data type

F383

Set column not null clause

F384

Drop identity property clause

F385

Drop column generation expression clause

F386

Set identity column generation clause

F391

Long identifiers

F392

Unicode escapes in identifiers

F393

Unicode escapes in literals

F394

Optional normal form specification

F401

Extended joined table

F401-01

NATURAL JOIN

F401-02

FULL OUTER JOIN

F401-04

CROSS JOIN

F402

Named column joins for LOBs, arrays, and multisets

F404

Range variable for common column names

F411

Time zone specification

differences regarding literal interpretation

F421

National character

F431

Read-only scrollable cursors

F431-01

FETCH with explicit NEXT

F431-02

FETCH FIRST

F431-03

FETCH LAST

F431-04

FETCH PRIOR

F431-05

FETCH ABSOLUTE

F431-06

FETCH RELATIVE

F441

Extended set function support

F442

Mixed column references in set functions

F471

Core

Scalar subquery values

F481

Core

Expanded NULL predicate

F491

Constraint management

F501

Core

Features and conformance views

F501-01

Core

SQL_FEATURES view

F501-02

Core

SQL_SIZING view

F502

Enhanced documentation tables

F531

Temporary tables

F555

Enhanced seconds precision

F561

Full value expressions

F571

Truth value tests

F591

Derived tables

F611

Indicator data types

F641

Row and table constructors

F651

Catalog name qualifiers

F661

Simple tables

F672

Retrospective check constraints

F690

Collation support

but no character set support

F692

Extended collation support

F701

Referential update actions

F711

ALTER domain

F731

INSERT column privileges

F751

View CHECK enhancements

F761

Session management

F762

CURRENT_CATALOG

F763

CURRENT_SCHEMA

F771

Connection management

F781

Self-referencing operations

F791

Insensitive cursors

F801

Full set function

F850

Top-level <order by clause> in <query expression>

F851

<order by clause> in subqueries

F852

Top-level <order by clause> in views

F855

Nested <order by clause> in <query expression>

F856

Nested <fetch first clause> in <query expression>

F857

Top-level <fetch first clause> in <query expression>

F858

<fetch first clause> in subqueries

F859

Top-level <fetch first clause> in views

F860

<fetch first row count> in <fetch first clause>

F861

Top-level <result offset clause> in <query expression>

F862

<result offset clause> in subqueries

F863

Nested <result offset clause> in <query expression>

F864

Top-level <result offset clause> in views

F865

<offset row count> in <result offset clause>

F867

FETCH FIRST clause: WITH TIES option

S071

SQL paths in function and type name resolution

S091-01

Arrays of built-in data types

S091-03

Array expressions

S092

Arrays of user-defined types

S095

Array constructors by query

S096

Optional array bounds

S098

ARRAY_AGG

S111

ONLY in query expressions

S201

SQL-invoked routines on arrays

S201-01

Array parameters

S201-02

Array as result type of functions

S211

User-defined cast functions

S301

Enhanced UNNEST

S404

TRIM_ARRAY

T031

BOOLEAN data type

T071

BIGINT data type

T121

WITH (excluding RECURSIVE) in query expression

T122

WITH (excluding RECURSIVE) in subquery

T131

Recursive query

T132

Recursive query in subquery

T133

Enhanced cycle mark values

SQL:202x draft

T141

SIMILAR predicate

T151

DISTINCT predicate

T152

DISTINCT predicate with negation

T171

LIKE clause in table definition

T172

AS subquery clause in table definition

T173

Extended LIKE clause in table definition

T174

Identity columns

T177

Sequence generator support: simple restart option

T178

Identity columns: simple restart option

T191

Referential action RESTRICT

T201

Comparable data types for referential constraints

T211-01

Triggers activated on UPDATE, INSERT, or DELETE of one base table

T211-02

BEFORE triggers

T211-03

AFTER triggers

T211-04

FOR EACH ROW triggers

T211-05

Ability to specify a search condition that must be true before the trigger is invoked

T211-07

TRIGGER privilege

T212

Enhanced trigger capability

T213

INSTEAD OF triggers

T241

START TRANSACTION statement

T261

Chained transactions

T271

Savepoints

T281

SELECT privilege with column granularity

T285

Enhanced derived column names

T312

OVERLAY function

T321-01

Core

User-defined functions with no overloading

T321-02

Core

User-defined stored procedures with no overloading

T321-03

Core

Function invocation

T321-04

Core

CALL statement

T321-05

Core

RETURN statement

T321-06

Core

ROUTINES view

T321-07

Core

PARAMETERS view

T323

Explicit security for external routines

T325

Qualified SQL parameter references

T331

Basic roles

T332

Extended roles

T341

Overloading of SQL-invoked functions and procedures

T351

Bracketed SQL comments (/*...*/ comments)

T431

Extended grouping capabilities

T432

Nested and concatenated GROUPING SETS

T433

Multiargument GROUPING function

T434

GROUP BY DISTINCT

T441

ABS and MOD functions

T461

Symmetric BETWEEN predicate

T491

LATERAL derived table

T501

Enhanced EXISTS predicate

T521

Named arguments in CALL statement

T523

Default values for INOUT parameters of SQL-invoked procedures

T524

Named arguments in routine invocations other than a CALL statement

T525

Default values for parameters of SQL-invoked functions

T551

Optional key words for default syntax

T581

Regular expression substring function

T591

UNIQUE constraints of possibly null columns

T611

Elementary OLAP operations

T612

Advanced OLAP operations

T613

Sampling

T614

NTILE function

T615

LEAD and LAG functions

T617

FIRST_VALUE and LAST_VALUE function

T620

WINDOW clause: GROUPS option

T621

Enhanced numeric functions

T622

Trigonometric functions

T623

General logarithm functions

T624

Common logarithm functions

T631

Core

IN predicate with one list element

T651

SQL-schema statements in SQL routines

T653

SQL-schema statements in external routines

T655

Cyclically dependent routines

T831

SQL/JSON path language: strict mode

T832

SQL/JSON path language: item method

T833

SQL/JSON path language: multiple subscripts

T834

SQL/JSON path language: wildcard member accessor

T835

SQL/JSON path language: filter expressions

T836

SQL/JSON path language: starts with predicate

T837

SQL/JSON path language: regex_like predicate

X010

XML type

X011

Arrays of XML type

X014

Attributes of XML type

X016

Persistent XML values

X020

XMLConcat

X031

XMLElement

X032

XMLForest

X034

XMLAgg

X035

XMLAgg: ORDER BY option

X036

XMLComment

X037

XMLPI

X040

Basic table mapping

X041

Basic table mapping: nulls absent

X042

Basic table mapping: null as nil

X043

Basic table mapping: table as forest

X044

Basic table mapping: table as element

X045

Basic table mapping: with target namespace

X046

Basic table mapping: data mapping

X047

Basic table mapping: metadata mapping

X048

Basic table mapping: base64 encoding of binary strings

X049

Basic table mapping: hex encoding of binary strings

X050

Advanced table mapping

X051

Advanced table mapping: nulls absent

X052

Advanced table mapping: null as nil

X053

Advanced table mapping: table as forest

X054

Advanced table mapping: table as element

X055

Advanced table mapping: with target namespace

X056

Advanced table mapping: data mapping

X057

Advanced table mapping: metadata mapping

X058

Advanced table mapping: base64 encoding of binary strings

X059

Advanced table mapping: hex encoding of binary strings

X060

XMLParse: character string input and CONTENT option

X061

XMLParse: character string input and DOCUMENT option

X070

XMLSerialize: character string serialization and CONTENT option

X071

XMLSerialize: character string serialization and DOCUMENT option

X072

XMLSerialize: character string serialization

X090

XML document predicate

X120

XML parameters in SQL routines

X121

XML parameters in external routines

X221

XML passing mechanism BY VALUE

X301

XMLTable: derived column list option

X302

XMLTable: ordinality column option

X303

XMLTable: column default option

X304

XMLTable: passing a context item

must be XML DOCUMENT

X400

Name and identifier mapping

X410

Alter column data type: XML type

PreviousD. SQL 相容性NextD.2. Unsupported Features

Last updated 2 years ago

Was this helpful?