1
resposta

CREATE TABLE com AS...

Ola,

Alguém poderia explicar brevemente de que forma funciona o comando abaixo ?

*Exemplo

CREATE TABLE TabelaDeTeste_backup12345 
    AS SELECT * FROM TabelaDeTeste 
        WHERE CURSO = 'BANCO DE DADOS' AND 
        PORTAL = 'ALURA'

Obrigado!

1 resposta

Ele vai:

  1. Criar uma nova tabela, TabelaDeTeste_backup12345, a partir da tabela TabelaDeTeste, com todas as colunas (campos) da tabela de origem (todas as colunas porque ele informou * no select); e

  2. Popular a nova tabela com todas as informações de origem (TabelaDeTeste) que atendam aos critérios do campo CURSO = 'BANCO DE DADOS' e PORTAL = 'ALURA'.

Basicamente, ele cria uma tabela a partir de outra e já a popula. Ou seja, o resultado do SELECT será a nova tabela, tanto as linhas quanto colunas.

Como o próprio exemplo indica, é muito usado para fazer backup de tabelas, mantendo um snapshot total ou parcial da tabela.