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; h = hash partitioned table,
l = list partitioned table, r = range partitioned table
| |
partnatts | int2 | The number of columns in partition key | |
partdefid | oid | pg_class.oid | The OID of the pg_class entry for the default partition of this partitioned table, or zero if this partitioned table does not have a default partition. |
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.
|