O PostgreSQL suporta CREATE TABLE ASe SELECT INTOquando uso os dois?
CREATE TABLE AS- definir uma nova tabela a partir dos resultados de uma consulta
CREATE TABLE AScria uma tabela e a preenche com dados calculados por umSELECTcomando. As colunas da tabela têm os nomes e tipos de dados associados às colunas de saída doSELECT(exceto que você pode substituir os nomes das colunas, fornecendo uma lista explícita de novos nomes de colunas).
CREATE TABLE AStem alguma semelhança com a criação de uma exibição, mas é realmente bem diferente: cria uma nova tabela e avalia a consulta apenas uma vez para preencher a nova tabela inicialmente. A nova tabela não rastreará alterações subseqüentes nas tabelas de origem da consulta. Por outro lado, uma visão reavalia suaSELECTdeclaração de definição sempre que é consultada.
E depois.
SELECT INTO- definir uma nova tabela a partir dos resultados de uma consulta
SELECT INTOcria uma nova tabela e a preenche com dados calculados por uma consulta. Os dados não são retornados ao cliente, como é normalSELECT. As colunas da nova tabela têm os nomes e tipos de dados associados às colunas de saída doSELECT.