mysql怎么批量插入
时间 : 2023-08-05 05:14:02声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性

在MySQL数据库中,可以使用INSERT语句来插入单行数据。但是,如果需要插入大量数据,逐条执行插入语句会非常麻烦和低效。这时可以使用批量插入的方式来提高效率。

下面介绍两种常用的批量插入数据的方法:

1. 使用INSERT INTO ... VALUES语句的多个值列表:可以将多个值列表合并到一个INSERT INTO ... VALUES语句中,以一次插入多行数据。

例如,要插入多个学生的信息,可以使用以下语法:

INSERT INTO students (name, age, gender)

VALUES ('Alice', 20, 'F'),

('Bob', 21, 'M'),

('Charlie', 22, 'M');

在上面的示例中,students是表名,name、age、gender是字段名,每个值列表都对应一行数据。

2. 使用INSERT INTO ... SELECT语句:可以先创建一个包含要插入数据的临时表,然后使用INSERT INTO ... SELECT语句从临时表中将数据插入到目标表中。

例如,要插入多个学生的信息,可以使用以下步骤:

1)创建一个临时表,例如temp_students,结构与目标表一致:

CREATE TABLE temp_students (

name VARCHAR(50),

age INT,

gender CHAR(1)

);

2)将要插入的数据插入到临时表中:

INSERT INTO temp_students (name, age, gender)

VALUES ('Alice', 20, 'F'),

('Bob', 21, 'M'),

('Charlie', 22, 'M');

3)使用INSERT INTO ... SELECT语句将临时表中的数据插入到目标表(students)中:

INSERT INTO students (name, age, gender)

SELECT name, age, gender

FROM temp_students;

以上两种方法都可以批量插入大量数据,提高插入效率。根据具体情况选择适合的方法来进行批量插入。