ZBLOG

mysql 批量插入数据

MySQL中可以使用INSERT INTO语句来插入数据,对于批量插入数据,有以下几种方式:

  1. 使用多个INSERT INTO语句

这是最常见的方式,即使用多个INSERT INTO语句将数据一条一条地插入。例如:

INSERT INTO table_name (column1, column2, column3)
VALUES (value1_1, value1_2, value1_3),
       (value2_1, value2_2, value2_3),
       (value3_1, value3_2, value3_3);

其中,table_name是表名,column1、column2、column3是列名,valueX_Y表示第X行第Y列的值。

缺点是需要写很多的SQL语句,不适合大规模数据的插入。

  1. 使用LOAD DATA INFILE语句

如果你要从文件导入大量数据到MySQL中,则可以使用LOAD DATA INFILE语句。该语句会将一个文件中的数据读取到MySQL中。例如:

LOAD DATA INFILE '/path/to/file.csv'
INTO TABLE table_name
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
(column1, column2, column3);

其中,/path/to/file.csv为CSV格式的文件路径;table_name为目标表名;FIELDS TERMINATED BY ‘,‘表示字段之间以逗号分隔;LINES TERMINATED BY ‘\n’表示行之间以换行符分隔。

需要注意的是,在执行该命令前需要通过以下命令开启LOCAL INFILE选项:

mysql -u root -p --local-infile=1
  1. 使用INSERT INTO … SELECT语句

如果你已经有了一个数据集,可以使用INSERT INTO … SELECT语句将数据从一个表中插入到另一个表中。例如:

INSERT INTO table_name (column1, column2, column3)
SELECT value1_1, value1_2, value1_3 FROM source_table
UNION ALL
SELECT value2_1, value2_2, value2_3 FROM source_table
UNION ALL
SELECT value3_1, value3_2, value3_3 FROM source_table;

其中,source_table为源表名。

以上就是MySQL批量插入数据的几种方式,根据实际情况选择适合自己的方式即可。

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=3209

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?