Einfügen mehrerer Zeilen in SQL

Notwendigkeit der SQL Insert INTO Multiple Rows-Abfrage

Die SQL INSERT-Abfrage fügt Daten in die Spalten einer bestimmten Tabelle ein.

Die normale SQL INSERT-Abfrage fügt die Datenwerte in einer einzigen Zeile ein. Wenn wir jedoch Daten in mehreren Zeilen gleichzeitig einfügen möchten, schlägt diese Abfrage fehl.

Um die Ausführungszeit zu sparen, müssen wir die SQL INSERT-Abfrage so verwenden, dass sie Daten gleichzeitig in mehrere Zeilen einfügt.

Nachdem wir die Notwendigkeit der SQL Insert-Abfrage für mehrere Zeilen verstanden haben, beginnen wir mit der Implementierung.

Traditionelle SQL INSERT-Abfrage zum Einfügen mehrerer Datensätze

Die traditionelle SQL INSERT-Abfrage fügt Eingabedaten in mehrere Zeilen ein. Bei dieser Technik müssen wir die Einfügeabfrage so oft ausführen, wie wir Daten in die Zeilen der Tabelle eingeben möchten.

Der grundlegende Nachteil dieser Abfrage ist der Overhead bei der Ausführung jeder Einfügeabfrage für die Einfügung mehrerer Zeilen.

Beispiel:

 
create table Info(id integer, Cost integer, city varchar(200));
insert into Info(id, Cost,city) values(1, 100,"Pune");
insert into Info(id, Cost,city) values(2, 50, "Satara");
insert into Info(id, Cost,city) values(3, 65,"Pune");
insert into Info(id, Cost,city) values(4, 97,"Mumbai");
insert into Info(id, Cost,city) values(5, 12,"USA");
select * from Info;

Ausgabe:

1 100 Pune
2 50 Satara
3 65 Pune
4 97 Mumbai
5 12 USA

INSERT-SELECT-UNION-Abfrage zum Einfügen mehrerer Datensätze

Im obigen Abschnitt haben wir erfahren, dass die INSERT INTO-Abfrage mehrere Datensätze einfügt. Wenn wir jedoch die Ausgabe betrachten, stellen wir fest, dass die Klausel „INSERT INTO“ viele Male wiederholt wird.

Wir können daher die INSERT-SELECT-UNION-Abfrage verwenden, um Daten in mehrere Zeilen der Tabelle einzufügen.

Die SQL UNION-Abfrage hilft dabei, alle Daten auszuwählen, die durch die SELECT-Abfrage innerhalb der INSERT-Anweisung eingeschlossen wurden.

 
create table Info(id integer, Cost integer);
INSERT INTO Info (id, Cost)  
SELECT 1, '123'  
UNION ALL   
SELECT 2, '234'  
UNION ALL  
SELECT 3, '456';  

select * from Info;

Ausgabe:

1 123
2 234
3 456

Reihenkonstruktion zum Einfügen mehrerer Datensätze

Die SQL INSERT-Abfrage wird so verwendet, dass wir eine einzelne INSERT-Abfrage verwenden, um mehrere Datensätze innerhalb eines einzigen Ausführungspunktes einzufügen.

Syntax:

 
INSERT INTO Table (columns)  
VALUES (val1, val2, valN); 

Beispiel:

 
create table Info(id integer, Cost integer,city nvarchar(200));
INSERT INTO Info (id,Cost,city)  
VALUES (1,200, 'Pune'), (2, 150,'USA'), (3,345, 'France');  

select * from Info;

Ausgabe:

1 200 Pune
2 150 USA
3 345 France

Fazit

Damit sind wir am Ende dieses Themas angelangt. Hier haben wir drei verschiedene Techniken behandelt, um Datenwerte über mehrere Datensätze einer Tabelle einzufügen.

Kostenlosen Account erstellen

Registrieren Sie sich jetzt und erhalten Sie Zugang zu unseren Cloud Produkten.

Das könnte Sie auch interessieren: