Die Anweisung INSERT INTO von SQL wird verwendet, um eine neue Zeile in eine Tabelle einzufügen. Es gibt zwei Möglichkeiten, die Anweisung INSERT INTO zum Einfügen von Zeilen zu verwenden:

  1. Nur Werte:  Die erste Methode besteht darin, nur den Wert der einzufügenden Daten ohne die Spaltennamen anzugeben.

    INSERT INTO table_name VALUES (Wert1, Wert2, Wert3,…);
    Tabellenname : Name der Tabelle.
    Wert1, Wert2,.. : Wert der ersten Spalte, zweiten Spalte,… für den neuen Datensatz

  2. Sowohl Spaltennamen als auch Werte: Bei der zweiten Methode geben wir sowohl die Spalten an, die wir füllen möchten, als auch ihre entsprechenden Werte, wie unten gezeigt:

    INSERT INTO Tabellenname (Spalte1, Spalte2, Spalte3,..) WERTE (Wert1, Wert2, Wert3,..);
    Tabellenname : Name der Tabelle.
    Spalte1 : Name der ersten Spalte, zweiten Spalte …
    Wert1, Wert2, Wert3 : Wert der ersten Spalte, zweiten Spalte, … für den neuen Datensatz

Tabelle 1

Abfragen:

Methode 1 (Einfügen nur von Werten):

INSERT INTO Student VALUES ('5','HARSH','WEST BENGAL','XXXXXXXXXX','19');

Ausgabe:
Die Tabelle Student sieht nun so aus:

ROLL_NRNAMEDIE ANSCHRIFTTELEFONDas Alter
1RAMDelhiXXXXXXXXXX18
2RAMESHGurgaonXXXXXXXXXX18
3SUJITROHTAKXXXXXXXXXX20
4SICHERDelhiXXXXXXXXXX18
3SUJITROHTAKXXXXXXXXXX20
2RAMESHGurgaonXXXXXXXXXX18
5HARSCHWEST BENGALXXXXXXXXXX19

Methode 2 (Einfügen von Werten nur in bestimmte Spalten):

INSERT INTO Student (ROLL_NO, NAME, Age) VALUES ('5','PRATIK','19');

Ausgabe:
Die Tabelle Student sieht nun so aus:

ROLL_NRNAMEDIE ANSCHRIFTTELEFONDas Alter
1RAMDelhiXXXXXXXXXX18
2RAMESHGurgaonXXXXXXXXXX18
3SUJITROHTAKXXXXXXXXXX20
4SICHERDelhiXXXXXXXXXX18
3SUJITROHTAKXXXXXXXXXX20
2RAMESHGurgaonXXXXXXXXXX18
5PRATIKNullNull19

Beachten Sie, dass die Spalten, für die keine Werte bereitgestellt werden, mit null gefüllt werden. Dies sind die Standardwerte für diese Spalten.

Verwendung von SELECT  in der INSERT INTO-Anweisung

Wir können die SELECT-Anweisung mit der INSERT INTO-Anweisung verwenden, um Zeilen aus einer Tabelle zu kopieren und sie in eine andere Tabelle einzufügen. Die Verwendung dieser Anweisung ähnelt der der INSERT INTO-Anweisung. Der Unterschied besteht darin, dass hier die SELECT-Anweisung verwendet wird, um Daten aus einer anderen Tabelle auszuwählen. Die verschiedenen Möglichkeiten zur Verwendung der INSERT INTO SELECT-Anweisung werden unten gezeigt:

  • Einfügen aller Spalten einer Tabelle: Wir können alle Daten einer Tabelle kopieren und in eine andere Tabelle einfügen.

    INSERT INTO first_table SELECT * FROM second_table;

    first_table : Name der ersten Tabelle.
    second_table : Name der zweiten Tabelle.

    Wir haben die SELECT-Anweisung verwendet, um die Daten aus einer Tabelle zu kopieren, und die INSERT INTO-Anweisung, um sie in eine andere Tabelle einzufügen.

  • Einfügen bestimmter Spalten einer Tabelle: Wir können nur die Spalten einer Tabelle kopieren, die wir in eine andere Tabelle einfügen möchten.
    Syntax:

    INSERT INTO first_table(names_of_columns1) SELECT names_of_columns2 FROM second_table;
    first_table : Name der ersten Tabelle.
    second_table : Name der zweiten Tabelle.
    Spaltennamen1 : Spaltennamen getrennt durch Komma(,) für Tabelle 1.
    Spaltennamen2 : Spaltennamen getrennt durch Komma(,) für Tabelle 2.

    Wir haben die SELECT-Anweisung verwendet, um die Daten der ausgewählten Spalten nur aus der zweiten Tabelle zu kopieren, und die INSERT INTO-Anweisung, um sie in die erste Tabelle einzufügen.

  • Kopieren bestimmter Zeilen aus einer Tabelle : Wir können bestimmte Zeilen aus einer Tabelle kopieren, um sie in eine andere Tabelle einzufügen, indem wir die WHERE-Klausel mit der SELECT-Anweisung verwenden. Wir müssen die entsprechende Bedingung in der WHERE-Klausel angeben, um bestimmte Zeilen auszuwählen.

    INSERT INTO table1 SELECT * FROM table2 WHERE Bedingung;
    first_table : Name der ersten Tabelle.
    second_table : Name der zweiten Tabelle.
    Bedingung: Bedingung zur Auswahl bestimmter Zeilen.

Tabelle 2: LateralStudent

ROLL_NRNAMEDIE ANSCHRIFTTELEFONDas Alter
7SOUVIKDUMDUMXXXXXXXXXX18
8NIRAJNOIDAXXXXXXXXXX19
9SOMESHROHTAKXXXXXXXXXX20

Abfragen:

    • Methode 1 (Einfügen aller Zeilen und Spalten):

      INSERT INTO Student SELECT * FROM LateralStudent;

      Ausgabe:
      Diese Abfrage fügt alle Daten der Tabelle LateralStudent in die Tabelle Student ein. Die Tabelle Student sieht nun so aus,

      ROLL_NRNAMEDIE ANSCHRIFTTELEFONDas Alter
      1RAMDelhiXXXXXXXXXX18
      2RAMESHGurgaonXXXXXXXXXX18
      3SUJITROHTAKXXXXXXXXXX20
      4SICHERDelhiXXXXXXXXXX18
      3SUJITROHTAKXXXXXXXXXX20
      2RAMESHGurgaonXXXXXXXXXX18
      7SOUVIKDUMDUMXXXXXXXXXX18
      8NIRAJNOIDAXXXXXXXXXX19
      9SOMESHROHTAKXXXXXXXXXX20
  • Methode 2 (Einfügen bestimmter Spalten):

    INSERT INTO Student(ROLL_NO,NAME,Alter) SELECT ROLL_NO,NAME,Alter FROM LateralStudent;

    Ausgabe:
    Diese Abfrage fügt die Daten in die Spalten ROLL_NO, NAME und Age der Tabelle LateralStudent in die Tabelle Student ein und die verbleibenden Spalten in der Student-Tabelle werden mit null gefüllt, was der Standardwert der verbleibenden Spalten ist. Die Tabelle Student sieht nun so aus,

    ROLL_NRNAMEDIE ANSCHRIFTTELEFONDas Alter
    1RAMDelhiXXXXXXXXXX18
    2RAMESHGurgaonXXXXXXXXXX18
    3SUJITROHTAKXXXXXXXXXX20
    4SICHERDelhiXXXXXXXXXX18
    3SUJITROHTAKXXXXXXXXXX20
    2RAMESHGurgaonXXXXXXXXXX18
    7SOUVIKNullNull18
    8NIRAJNullNull19
    9SOMESHNullNull20
  • Wählen Sie bestimmte Zeilen zum Einfügen aus :

    INSERT INTO Student SELECT * FROM LateralStudent WHERE Alter = 18;

    Ausgabe:
    Diese Abfrage wählt nur die erste Zeile aus der Tabelle LateralStudent aus, um sie in die Tabelle Student einzufügen. Die Tabelle Student sieht nun so aus,

    ROLL_NRNAMEDIE ANSCHRIFTTELEFONDas Alter
    1RAMDelhiXXXXXXXXXX18
    2RAMESHGurgaonXXXXXXXXXX18
    3SUJITROHTAKXXXXXXXXXX20
    4SICHERDelhiXXXXXXXXXX18
    3SUJITROHTAKXXXXXXXXXX20
    2RAMESHGurgaonXXXXXXXXXX18
    7SOUVIKDUMDUMXXXXXXXXXX18
  • Einfügen mehrerer Zeilen in eine Tabelle mit einer einzelnen SQL-Anweisung
     
    INSERT INTO Tabellenname(Spalte1,Spalte2,Spalte3,.......)
    WERTE (Wert1, Wert2,Wert3,.....),
            (Wert1, Wert2,Wert3,.....),
             (Wert1, Wert2,Wert3,.....),
             ......................... ; 
    Tabellenname : Name der Tabelle
     Spalte1 : Name der ersten Spalte, zweiten Spalte …
     Wert1, Wert2, Wert3 : Wert der ersten Spalte, zweiten Spalte, … für jede neu eingefügte Zeile  
    Sie müssen mehrere Wertelisten bereitstellen, wobei jede Liste durch "," getrennt ist. Jede Werteliste entspricht Werten, die in jede neue Zeile der Tabelle einzufügen sind.
    Werte in der nächsten Liste geben an, dass Werte in die nächste Zeile der Tabelle eingefügt werden sollen.     
    

    Beispiel:

    Die folgende SQL-Anweisung fügt mehrere Zeilen in die Student-Tabelle ein.

    Eingabe:
    INSERT INTO SCHÜLER(ID, NAME, ALTER, STUFE, STADT) WERTE(1,"AMIT KUMAR",15,10,"DELHI"),
                                                       (2, „GAURI RAO“, 18,12, „BANGALORE“),
                                                       (3, „MANAV BHATT“, 17,11, „NEU-DELHI“),
                                                        (4, „RIYA KAPOOR“, 10,5, „UDAIPUR“);
    

    Ausgabe: STUDENT TABLE
    Diese Abfrage fügt alle Werte in jede aufeinanderfolgende Zeile der STUDENT TABLE ein. Somit sieht die STUDENT-Tabelle wie folgt aus:

    ICH WÜRDENAMEDAS ALTERKLASSESTADT
    1AMIT KUMARfünfzehn10DELHI
    2GAURI RAO1612BANGALORE
    3MANAV BHATT1711NEU-DELHI
    4RIYA KAPOOR105UDAIPUR

    Dieser Artikel wurde von Harsh Agarwal beigesteuert . Wenn Ihnen GeeksforGeeks gefällt und Sie einen Beitrag leisten möchten, können Sie auch einen Artikel über Contribute.geeksforgeeks.org schreiben oder Ihren Artikel per E-Mail an Contribute@geeksforgeeks.org senden. Sehen Sie, wie Ihr Artikel auf der Hauptseite von GeeksforGeeks erscheint, und helfen Sie anderen Geeks.

    Bitte schreiben Sie Kommentare, wenn Sie etwas Falsches finden oder weitere Informationen zu dem oben diskutierten Thema teilen möchten.

    Achtung Leser! Hören Sie jetzt nicht auf zu lernen. Lernen Sie SQL für Vorstellungsgespräche mit  dem SQL-Kurs  von GeeksforGeeks.