September 26, 2024: PostgreSQL 17 Released!
Supported Versions: Current (17) / 16 / 15 / 14 / 13 / 12
Development Versions: devel
Unsupported versions: 11 / 10
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.

51.36. pg_partitioned_table

The catalog pg_partitioned_table stores information about how tables are partitioned.

Table 51.36. pg_partitioned_table Columns

Name Type References Description
partrelid oid pg_class.oid The OID of the pg_class entry for this partitioned table
partstrat char   Partitioning strategy; l = list partitioned table, r = range partitioned table
partnatts int2   The number of columns in partition key
partattrs int2vector pg_attribute.attnum This is an array of partnatts values that indicate which table columns are part of the partition key. For example, a value of 1 3 would mean that the first and the third table columns make up the partition key. A zero in this array indicates that the corresponding partition key column is an expression, rather than a simple column reference.
partclass oidvector pg_opclass.oid For each column in the partition key, this contains the OID of the operator class to use. See pg_opclass for details.
partcollation oidvector pg_opclass.oid For each column in the partition key, this contains the OID of the collation to use for partitioning, or zero if the column is not of a collatable data type.
partexprs pg_node_tree   Expression trees (in nodeToString() representation) for partition key columns that are not simple column references. This is a list with one element for each zero entry in partattrs. Null if all partition key columns are simple references.