Wstawianie wierszy za pomocą SELECT INTO
Instrukcja SELECT INTO tworzy nową tabela i zapełniany zestaw wyników instrukcji SELECT.SELECT INTO można łączyć dane z kilku tabel lub widoków w jednej tabela.Może również służyć za utworzyć nową tabela zawierającą dane z serwer połączony.
Atrybuty wyrażenia na liście wybierz określa strukturę nowej tabela.Poniższy przykład tworzy tabela dbo.EmployeeAddresses , wybierając siedem kolumn z różnych pracowników i związanych z adresem tabel.
USE AdventureWorks2008R2;
GO
SELECT c.FirstName, c.LastName, e.JobTitle, a.AddressLine1, a.City,
sp.Name AS [State/Province], a.PostalCode
INTO dbo.EmployeeAddresses
FROM Person.Person AS c
JOIN HumanResources.Employee AS e
ON e.BusinessEntityID = c.BusinessEntityID
JOIN Person.BusinessEntityAddress AS bea
ON e.BusinessEntityID = bea.BusinessEntityID
JOIN Person.Address AS a
ON bea.AddressID = a.AddressID
JOIN Person.StateProvince as sp
ON sp.StateProvinceID = a.StateProvinceID;
GO
Nie można używać do tworzenia tabela podzielonym na partycje SELECT INTO nawet wtedy, gdy źródło tabela jest podzielony na partycje.SELECT INTO nie używać partycji schematu źródło tabela.Zamiast tworzenia nowej tabela w domyślnym grupa plików.Aby wstawić wiersze do tabela partycjonowana, należy najpierw utworzyć tabela partycjonowana , a następnie użyć INSERT INTO...Wybierz z instrukcja.
Atrybut FILESTREAM nie przetransferuje podczas tworzenia nowej tabela przy użyciu instrukcja SELECT INTO.Liczba bloków BLOB FILESTREAM są kopiowane i przechowywane w nowej tabela jako varbinary(max) bloków BLOB.Jeśli FILESTREAM BLOB przekracza 2 GB, wywoływane jest następujący komunikat o błędzie i zatrzymane instrukcja: "Próba rosnąć LOB poza maksymalny dozwolony rozmiar 2147483647 bajtów."