September 26, 2024: PostgreSQL 17 Released!
Supported Versions: Current (17) / 16 / 15 / 14 / 13 / 12
Development Versions: devel
Unsupported versions: 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2
This documentation is for an unsupported version of PostgreSQL.
You may want to view the same page for the current version, or one of the other supported versions listed above instead.

PostgreSQL 9.6.24 Documentation

The PostgreSQL Global Development Group


Table of Contents
Preface
What is PostgreSQL?
A Brief History of PostgreSQL
Conventions
Further Information
Bug Reporting Guidelines
I. Tutorial
1. Getting Started
2. The SQL Language
3. Advanced Features
II. The SQL Language
4. SQL Syntax
5. Data Definition
6. Data Manipulation
7. Queries
8. Data Types
9. Functions and Operators
10. Type Conversion
11. Indexes
12. Full Text Search
13. Concurrency Control
14. Performance Tips
15. Parallel Query
III. Server Administration
16. Installation from Source Code
17. Installation from Source Code on Windows
18. Server Setup and Operation
19. Server Configuration
20. Client Authentication
21. Database Roles
22. Managing Databases
23. Localization
24. Routine Database Maintenance Tasks
25. Backup and Restore
26. High Availability, Load Balancing, and Replication
27. Recovery Configuration
28. Monitoring Database Activity
29. Monitoring Disk Usage
30. Reliability and the Write-Ahead Log
31. Regression Tests
IV. Client Interfaces
32. libpq - C Library
33. Large Objects
34. ECPG - Embedded SQL in C
35. The Information Schema
V. Server Programming
36. Extending SQL
37. Triggers
38. Event Triggers
39. The Rule System
40. Procedural Languages
41. PL/pgSQL - SQL Procedural Language
42. PL/Tcl - Tcl Procedural Language
43. PL/Perl - Perl Procedural Language
44. PL/Python - Python Procedural Language
45. Server Programming Interface
46. Background Worker Processes
47. Logical Decoding
48. Replication Progress Tracking
VI. Reference
I. SQL Commands
II. PostgreSQL Client Applications
III. PostgreSQL Server Applications
VII. Internals
49. Overview of PostgreSQL Internals
50. System Catalogs
51. Frontend/Backend Protocol
52. PostgreSQL Coding Conventions
53. Native Language Support
54. Writing A Procedural Language Handler
55. Writing A Foreign Data Wrapper
56. Writing A Table Sampling Method
57. Writing A Custom Scan Provider
58. Genetic Query Optimizer
59. Index Access Method Interface Definition
60. Generic WAL Records
61. GiST Indexes
62. SP-GiST Indexes
63. GIN Indexes
64. BRIN Indexes
65. Database Physical Storage
66. BKI Backend Interface
67. How the Planner Uses Statistics
VIII. Appendixes
A. PostgreSQL Error Codes
B. Date/Time Support
C. SQL Key Words
D. SQL Conformance
E. Release Notes
F. Additional Supplied Modules
G. Additional Supplied Programs
H. External Projects
I. The Source Code Repository
J. Documentation
K. Acronyms
Bibliography
Index