SQL | INSERT INTO-Anweisung
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:
- 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 - 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
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_NR | NAME | DIE ANSCHRIFT | TELEFON | Das Alter |
1 | RAM | Delhi | XXXXXXXXXX | 18 |
2 | RAMESH | Gurgaon | XXXXXXXXXX | 18 |
3 | SUJIT | ROHTAK | XXXXXXXXXX | 20 |
4 | SICHER | Delhi | XXXXXXXXXX | 18 |
3 | SUJIT | ROHTAK | XXXXXXXXXX | 20 |
2 | RAMESH | Gurgaon | XXXXXXXXXX | 18 |
5 | HARSCH | WEST BENGAL | XXXXXXXXXX | 19 |
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_NR | NAME | DIE ANSCHRIFT | TELEFON | Das Alter |
1 | RAM | Delhi | XXXXXXXXXX | 18 |
2 | RAMESH | Gurgaon | XXXXXXXXXX | 18 |
3 | SUJIT | ROHTAK | XXXXXXXXXX | 20 |
4 | SICHER | Delhi | XXXXXXXXXX | 18 |
3 | SUJIT | ROHTAK | XXXXXXXXXX | 20 |
2 | RAMESH | Gurgaon | XXXXXXXXXX | 18 |
5 | PRATIK | Null | Null | 19 |
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_NR | NAME | DIE ANSCHRIFT | TELEFON | Das Alter |
7 | SOUVIK | DUMDUM | XXXXXXXXXX | 18 |
8 | NIRAJ | NOIDA | XXXXXXXXXX | 19 |
9 | SOMESH | ROHTAK | XXXXXXXXXX | 20 |
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_NR NAME DIE ANSCHRIFT TELEFON Das Alter 1 RAM Delhi XXXXXXXXXX 18 2 RAMESH Gurgaon XXXXXXXXXX 18 3 SUJIT ROHTAK XXXXXXXXXX 20 4 SICHER Delhi XXXXXXXXXX 18 3 SUJIT ROHTAK XXXXXXXXXX 20 2 RAMESH Gurgaon XXXXXXXXXX 18 7 SOUVIK DUMDUM XXXXXXXXXX 18 8 NIRAJ NOIDA XXXXXXXXXX 19 9 SOMESH ROHTAK XXXXXXXXXX 20
- 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_NR NAME DIE ANSCHRIFT TELEFON Das Alter 1 RAM Delhi XXXXXXXXXX 18 2 RAMESH Gurgaon XXXXXXXXXX 18 3 SUJIT ROHTAK XXXXXXXXXX 20 4 SICHER Delhi XXXXXXXXXX 18 3 SUJIT ROHTAK XXXXXXXXXX 20 2 RAMESH Gurgaon XXXXXXXXXX 18 7 SOUVIK Null Null 18 8 NIRAJ Null Null 19 9 SOMESH Null Null 20 - 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_NR NAME DIE ANSCHRIFT TELEFON Das Alter 1 RAM Delhi XXXXXXXXXX 18 2 RAMESH Gurgaon XXXXXXXXXX 18 3 SUJIT ROHTAK XXXXXXXXXX 20 4 SICHER Delhi XXXXXXXXXX 18 3 SUJIT ROHTAK XXXXXXXXXX 20 2 RAMESH Gurgaon XXXXXXXXXX 18 7 SOUVIK DUMDUM XXXXXXXXXX 18
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ÜRDE | NAME | DAS ALTER | KLASSE | STADT |
1 | AMIT KUMAR | fünfzehn | 10 | DELHI |
2 | GAURI RAO | 16 | 12 | BANGALORE |
3 | MANAV BHATT | 17 | 11 | NEU-DELHI |
4 | RIYA KAPOOR | 10 | 5 | UDAIPUR |
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.