Existe uma maneira de criar uma tabela que tenha a mesma estrutura de outra tabela, mas com colunas adicionais? A partir desta pergunta , posso copiar a estrutura de uma tabela com:
CREATE TABLE new_table_name ( like old_table_name including all)
E então eu posso adicionar colunas uma de cada vez, ALTER TABLE new_table_name ADD COLUMN...
mas estou procurando uma maneira de fazer isso de forma mais sucinta, como:
CREATE TABLE new_table_name ( like old_table_name including all), new_col1 new_col1_type, new_col2 new_col2_type,...
Você pode usar a sintaxe abaixo;
O violino está aqui
Não, não há método mais sucinto de fazê-lo. Mas
ALTER TABLE
pode aceitar vários argumentos,Realmente se seu objetivo é sucinto, SQL quase nunca é uma linguagem ideal.
Você pode usar a
CREATE TABLE AS <query>
opção, conforme detalhado na documentação .--Código não testado no PostgreSQL--