INTO-Klausel (Transact-SQL)

Aktualisiert: 15. September 2007

Erstellt eine neue Tabelle und fügt die Ergebniszeilen aus der Abfrage ein.

Themenlink (Symbol)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.

    ms188029.note(de-de,SQL.90).gifHinweis:
    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

Neuer Inhalt:
  • Im Abschnitt mit den Hinweisen wurden Informationen zu partitionierten Tabellen hinzugefügt.
  • Der Abschnitt "Beispiele" wurde hinzugefügt.