O
create table as
recurso no PostgreSQL agora pode ser a resposta que o OP estava procurando. https://www.postgresql.org/docs/9.5/static /sql-createtableas.html
create table my_table_copy as
select * from my_table
Isso criará uma tabela idêntica com os dados.
Adicionando
with no data
copiará o esquema sem os dados. create table my_table_copy as
select * from my_table
with no data
Isso criará a tabela com todos os dados, mas sem índices e gatilhos etc.
create table my_table_copy (like my_table including all)
A sintaxe de criação de tabela incluirá todos os gatilhos, índices, restrições, etc. Mas não incluirá dados.