create-tables-c.sql

application/octet-stream

Filename: create-tables-c.sql
Type: application/octet-stream
Part: 7
Message: Re: [PoC] Reducing planning time when tables have many partitions
\set N 1024

SELECT format('CREATE TABLE prt%s_%s(id INT PRIMARY KEY, value INT) PARTITION BY RANGE(id)', n, :N)
FROM generate_series(1, 3) AS n \gexec

SELECT format('CREATE TABLE prt%s_%s_%s PARTITION OF prt%s_%s FOR VALUES FROM (%s) TO (%s)', n, i, :N, n, :N, 100 * (i - 1), 100 * i)
FROM generate_series(1, 3) AS n, generate_series(1, :N) AS i \gexec

SELECT format('INSERT INTO prt%s_%s SELECT i, i FROM generate_series(0, 100 * %s - 1) i', n, :N, :N)
FROM generate_series(1, 3) AS n \gexec

ANALYZE;