logo

SQL SELECT INTO-Anweisung

Der SQL SELECT INTO-Anweisung wird verwendet, um Daten aus einer Tabelle in eine neue Tabelle zu kopieren.

Notiz: Die Abfragen werden in SQL Server ausgeführt und funktionieren möglicherweise nicht in vielen Online-SQL-Editoren. Verwenden Sie daher besser einen Offline-Editor.



Syntax

Die SQL INSERT INTO-Syntax lautet:

SELECT Spalte1, Spalte2…
IN NEW_TABLE aus SOURCE_TABLE
WO-Bedingung;

Um die gesamten Daten der Tabelle mit dem Befehl INSERT INTO zu kopieren, verwenden Sie diese Syntax:



WÄHLEN *
INTO NEW_TABLE von SOURCE_TABLE
WO-Bedingung;

Parameter

  • NEW_TABLE sollte das gleiche Schema und die gleichen Datentypen wie diese SOURCE_TABLE haben.
  • HINEIN bedeutet, in welche Tabelle wir kopieren müssen.
  • Zustand: Eine Bedingung ist eine optionale Anweisung, die Ihnen sagt, welche Zeilen Sie auswählen sollen. Wenn Sie keine Bedingung angeben, wählen Sie einfach alle Zeilen aus der Originaltabelle aus.

SELECT INTO Beispiel

Schauen wir uns einige Beispiele dafür an SELECT INTO-Anweisung in SQL und verstehen, wie man es benutzt.

Zuerst erstellen wir eine Tabelle „Customer“ und fügen einige zufällige Daten ein:



  CREATE TABLE   Customer(  CustomerID INT   PRIMARY KEY  ,  CustomerName VARCHAR(50),  LastName VARCHAR(50),  Country VARCHAR(50),  Age int(2),  Phone int(10) ); -- Insert some sample data into the Customers table   INSERT INTO   Customer (CustomerID, CustomerName, LastName, Country, Age, Phone)   VALUES   (1, 'Shubham', 'Thakur', 'India','23','xxxxxxxxxx'),  (2, 'Aman ', 'Chopra', 'Australia','21','xxxxxxxxxx'),  (3, 'Naveen', 'Tulasi', 'Sri lanka','24','xxxxxxxxxx'),  (4, 'Aditya', 'Arpan', 'Austria','21','xxxxxxxxxx'),  (5, 'Nishant. Salchichas S.A.', 'Jain', 'Spain','22','xxxxxxxxxx');>

Kundentisch:

Kundentisch

Kundentisch

Beispiel für eine INSERT INTO-Anweisung

In diesem Beispiel erstellen wir eine BackupCustomer-Tabelle und fügen dann mithilfe der SELECT INTO-Anweisung Daten in diese Tabelle ein.

Abfrage:

  CREATE TABLE   backUpCustomer (  CustomerID INTEGER   PRIMARY KEY   AUTOINCREMENT,  CustomerName VARCHAR(50),  LastName VARCHAR(50),  Country VARCHAR(50),  Age INT,  Phone VARCHAR(10) );    INSERT INTO   backUpCustomer (CustomerName, LastName, Country, Age, Phone)   SELECT   CustomerName, LastName, Country, Age, Phone   FROM   Customer;   SELECT   *   FROM   backUpCustomer ;>

Ausgabe:

Ausgabe der SELECT INTO-Anweisung

backUp-Kundentabelle

Abfrage

Benutzen Sie die „where“-Klausel um nur einige Zeilen von Customer in die backUpCustomer-Tabelle zu kopieren.

CREATE TABLE OtherTable (  CustomerID INTEGER PRIMARY KEY AUTOINCREMENT,  CustomerName VARCHAR(50),  LastName VARCHAR(50),  Country VARCHAR(50),  Age INT,  Phone VARCHAR(10) );  INSERT INTO OtherTable (CustomerName, LastName, Country, Age, Phone) SELECT CustomerName, LastName, Country, Age, Phone FROM Customer WHERE Country = 'India';>

Ausgabe

Ausgabe

Ausgabe

Abfrage

Um nur einige Spalten von „Customer“ in die Tabelle „backUpCustomer“ zu kopieren, geben Sie diese in der Abfrage an.

CREATE TABLE backUpCustomers (  CustomerName VARCHAR(50),  LastName VARCHAR(50),  Age INT );  INSERT INTO backUpCustomers (CustomerName, LastName, Age) SELECT CustomerName, LastName, Age FROM Customer;   SELECT * FROM backUpCustomers;>

Ausgabe

Ausgabe

Ausgabe

Konvertieren Sie die Zeichenfolge in ein Datum

Einfügen INTO SELECT vs. SELECT INTO

Beide Anweisungen könnten verwendet werden, um Daten von einer Tabelle in eine andere zu kopieren. Aber INSERT INTO SELECT könnte nur verwendet werden, wenn die Zieltabelle existiert, während die SELECT INTO-Anweisung auch dann verwendet werden könnte, wenn die Zieltabelle nicht existiert, da sie die Zieltabelle erstellt, wenn sie nicht existiert.

INSERT INTO backUpCustomer select * from Customer;>

Die HERE-Tabelle tempTable sollte vorhanden sein oder vorher erstellt werden, sonst wird ein Fehler ausgegeben. Einfügen INTO SELECT vs. SELECT INTO

SELECT * INTO backUpCustomer from Customer;>

Hier ist es nicht notwendig, vorher zu existieren, da SELECT INTO eine Tabelle erstellt, wenn die Tabelle nicht existiert, und dann die Daten kopiert.