Inserimento di righe con l'istruzione SELECT INTO

L'istruzione SELECT INTO consente di creare una nuova tabella e di popolarla con il set di risultati dell'istruzione SELECT. Tramite l'istruzione SELECT INTO è possibile inserire in un'unica tabella i dati di più tabelle o viste, nonché creare una nuova tabella contenente i dati selezionati da un server collegato.

La struttura della nuova tabella viene definita in base agli attributi delle espressioni dell'elenco di selezione. Nell'esempio seguente per la creazione della tabella dbo.EmployeeAddresses vengono selezionate sette colonne di diverse tabelle relative a dipendenti e indirizzi.

USE AdventureWorks;
GO
SELECT c.FirstName, c.LastName, e.Title, a.AddressLine1, a.City, sp.Name AS [State/Province], a.PostalCode
INTO dbo.EmployeeAddresses
FROM Person.Contact AS c
JOIN HumanResources.Employee AS e ON e.ContactID = c.ContactID
JOIN HumanResources.EmployeeAddress AS ea ON ea.EmployeeID = e.EmployeeID
JOIN Person.Address AS a on a.AddressID = ea.AddressID
JOIN Person.StateProvince as sp ON sp.StateProvinceID = a.StateProvinceID;
GO

Non è possibile utilizzare SELECT INTO per creare una tabella partizionata anche quando la tabella di origine è partizionata. SELECT INTO non utilizza lo schema di partizione della tabella di origine. La nuova tabella viene invece creata nel filegroup predefinito. Per inserire righe in una tabella partizionata, è necessario creare prima la tabella partizionata, quindi utilizzare l'istruzione INSERT INTO…SELECT FROM.

Vedere anche

Concetti

Aggiunta di righe con INSERT e SELECT
Inserimento di una riga tramite INSERT e Values
Impostazione di limiti per le righe inserite utilizzando la parola chiave TOP
Inserimento di righe con subquery INSERT e SELECT

Altre risorse

SELECT (Transact-SQL)

Guida in linea e informazioni

Assistenza su SQL Server 2005