INTO-Klausel (Transact-SQL)
Aktualisiert: 15. September 2007
Erstellt eine neue Tabelle und fügt die Ergebniszeilen aus der Abfrage ein.
Transact-SQL-Syntaxkonventionen
Syntax
[ INTO new_table ]
Argumente
new_table
Gibt den Namen einer neuen Tabelle an, die mithilfe der Spalten in der Auswahlliste und der von der WHERE-Klausel ausgewählten Zeilen erstellt wird. Das Format von new_table wird bestimmt, indem die Ausdrücke in der Auswahlliste ausgewertet werden. Die Spalten in new_table werden in der durch die Auswahlliste angegebenen Reihenfolge erstellt. Jede Spalte in new_table besitzt den gleichen Namen, Datentyp und Wert wie der entsprechende Ausdruck in der Auswahlliste.Wenn eine berechnete Spalte in der Auswahlliste eingeschlossen ist, ist die entsprechende Spalte in der neuen Tabelle keine berechnete Spalte. Die Werte in der neuen Spalte entsprechen den Werten, die zum Zeitpunkt der Ausführung der SELECT...INTO-Anweisung berechnet wurden.
Wie viel für bestimmte Massenvorgänge, einschließlich SELECT...INTO, protokolliert wird, wird durch das für die Datenbank aktive Wiederherstellungsmodell bestimmt. Weitere Informationen finden Sie unter Übersicht über die Wiederherstellungsmodelle.
Hinweis: In Versionen vor SQL Server 2000 ist das Erstellen einer dauerhaften Tabelle mit SELECT INTO nur zulässig, wenn select into/bulkcopy festgelegt ist. In SQL Server 2000 und in späteren Versionen wirkt sich die Datenbankoption select into/bulkcopy jedoch nicht mehr auf die Erstellung einer dauerhaften Tabelle mithilfe der SELECT INTO-Anweisung aus.
Hinweise
Der Benutzer, der eine SELECT-Anweisung mit der INTO-Klausel ausführt, muss über die CREATE TABLE-Berechtigung in der Zieldatenbank verfügen.
Sie können nicht SELECT INTO verwenden, um eine partitionierte Tabelle zu erstellen, selbst, wenn die Quelltabelle partitioniert ist. SELECT INTO verwendet nicht das Partitionsschema der Quelltabelle. Stattdessen wird die neue Tabelle in der Standarddateigruppe erstellt. Sie müssen zuerst die partitionierte Tabelle erstellen und dann die INSERT INTO…SELECT FROM-Anweisung verwenden, um Zeilen in eine partitionierte Tabelle einzufügen.
SELECT...INTO kann nicht mit COMPUTE verwendet werden.
Beispiele
Das folgende Beispiel erstellt die dbo.EmployeeAddresses
-Tabelle, indem sieben Spalten aus verschiedenen mitarbeiter- und adressbezogenen Tabellen ausgewählt werden.
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
Siehe auch
Verweis
SELECT (Transact-SQL)
SELECT-Beispiele (Transact-SQL)
Andere Ressourcen
Einfügen von Zeilen mit SELECT INTO
Hilfe und Informationen
Informationsquellen für SQL Server 2005
Änderungsverlauf
Version | Verlauf |
---|---|
15. September 2007 |
|