On Fri, 9 Aug 2024 at 06:20, Ron Johnson <ronljohnso...@gmail.com> wrote:
> > What if the partitions aren't all rationally named? There *must* be a > pg_* table out there which contains the partition boundaries... > > The pg_class column relpartbound contains an internal representation of the partition boundary, when applicable. You can decompile it into the canonical text format with pg_get_expr( expr pg_node_tree, relation oid [, pretty boolean ] ) → text. So: create table t(x int primary key) partition by list(x); create table u partition of t for values in (0,1); create table v partition of t for values in (2,3,4,5,6,7,8,9); select oid::regclass,pg_get_expr(relpartbound,oid) from pg_class where relkind='r' and relispartition; oid | pg_get_expr -----+---------------------------------------- u | FOR VALUES IN (0, 1) v | FOR VALUES IN (2, 3, 4, 5, 6, 7, 8, 9) (2 rows) Best, Giovanni