tutoriais mais recente desenvolvimento web
 

SQL SELECT INTO


Com o SQL, você pode copiar informações de uma tabela para outra.

O SELECT INTO copia dados de uma tabela e insere-lo em uma nova tabela.


A instrução SQL SELECT INTO

A instrução SELECT INTO seleciona dados de uma tabela e insere-lo em uma nova tabela.

SQL SELECT INTO Sintaxe

Podemos copiar todas as colunas para a nova tabela:

SELECT *
INTO newtable [IN externaldb ]
FROM table1;

Ou podemos copiar apenas as colunas que queremos para a nova tabela:

SELECT column_name(s)
INTO newtable [IN externaldb ]
FROM table1;

A nova tabela será criada com a coluna de nomes e tipos conforme definido na instrução SELECT. Você pode aplicar novos nomes utilizando a cláusula AS.


SQL SELECT INTO Exemplos

Criar uma cópia de backup de clientes:

SELECT *
INTO CustomersBackup2013
FROM Customers;

Use a cláusula IN para copiar a tabela em outro banco de dados:

SELECT *
INTO CustomersBackup2013 IN 'Backup.mdb'
FROM Customers;

Copiar apenas algumas colunas para a nova tabela:

SELECT CustomerName, ContactName
INTO CustomersBackup2013
FROM Customers;

Copiar apenas os clientes alemães para a nova tabela:

SELECT *
INTO CustomersBackup2013
FROM Customers
WHERE Country='Germany';

Copiar dados de mais de uma tabela para a nova tabela:

SELECT Customers.CustomerName, Orders.OrderID
INTO CustomersOrderBackup2013
FROM Customers
LEFT JOIN Orders
ON Customers.CustomerID=Orders.CustomerID;

Tip: A SELECT INTO também pode ser utilizado para criar uma nova tabela, vazio utilizando o esquema de um outro. Basta adicionar uma cláusula WHERE que faz com que a consulta para retornar nenhum dado:

SELECT *
INTO newtable
FROM table1
WHERE 1=0;