如何在 SQL 中 INSERT 多条记录

在本文中,我们将专注于如何在SQL中插入多个行。

需要 SQL 插入 INTO 多个行查询

SQL INSERT 查询将数据插入到特定表的列中。

正常的 SQL INSERT 查询将数据值输入到一个行中,如果我们要同时输入多个行中的数据,此查询将失败。

因此,为了节省执行时间,我们需要以这种方式使用 SQL INSERT 查询,以便同时将数据注入多个行。

了解了对多个行 SQL 插入查询的必要性,让我们开始实施相同的查询。


传统的 SQL INSERT 查询以插入多个记录

传统的 SQL INSERT 查询将输入数据注入到多个行中. 在此技术中,我们需要将输入查询输入到表的行中多少次。

此查询的基本缺点是执行多个行注入的每个插入查询的重头。

** 例子:**

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

出发点:**

11	100	Pune
22	50	Satara
33	65	Pune
44	97	Mumbai
55	12	USA

INSERT-SELECT-UNION 查询以插入多个记录

在上面的部分,我们得知,INSERT INTO查询注入多个记录,但是,如果我们观察它的输出,我们得知INSERT INTO条款被重复了很多次。

因此,我们可以使用 INSERT-SELECT-UNION 查询将数据插入表中的多个行。

SQL UNION 查询有助于通过 INSERT 声明选择已被 SELECT 查询附加的所有数据。

1create table Info(id integer, Cost integer);
2INSERT INTO Info (id, Cost)  
3SELECT 1, '123'  
4UNION ALL   
5SELECT 2, '234'  
6UNION ALL  
7SELECT 3, '456';  
8
9select * from Info;

出发点:**

11	123
22	234
33	456

行构建以插入多个记录

SQL INSERT 查询以一种方式使用单个 INSERT 查询在单个执行点内插入多个记录。

合成:**

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

** 例子:**

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

出发点:**

11	200	Pune
22	150	USA
33	345	France

结论

在此,我们已经涵盖了三种不同的技术,以在表的多个记录中输入数据值。

请感到自由的评论,如果你遇到任何疑问。

有关 SQL 的更多文章,请访问 SQL JournalDev


参考

Published At
Categories with 技术
Tagged with
comments powered by Disqus