MySQL批量值插入
我有一大堆电子邮件,每封都用逗号(,)隔开(不是csv)。我想将它们上传到一个数据库表(带有单字段电子邮件),这样每个电子邮件都会进入单独的记录条目。最简单的方法是什么?我有一个想法,使用grep用我的sql语法替换逗号。。但是正在寻找其他的解决办法。。有什么想法吗?我会使用诸如sed或awk之类的shell工具将输入格式转换为可以处理的格式。MySQL支持在一个语句中进行多个插入MySQL批量值插入,sql,mysql,Sql,Mysql,我有一大堆电子邮件,每封都用逗号(,)隔开(不是csv)。我想将它们上传到一个数据库表(带有单字段电子邮件),这样每个电子邮件都会进入单独的记录条目。最简单的方法是什么?我有一个想法,使用grep用我的sql语法替换逗号。。但是正在寻找其他的解决办法。。有什么想法吗?我会使用诸如sed或awk之类的shell工具将输入格式转换为可以处理的格式。MySQL支持在一个语句中进行多个插入 INSERT INTO [Table] ([col1], [col2], ... [colN] ) VALUES
INSERT INTO [Table] ([col1], [col2], ... [colN] )
VALUES ([value1], [value2], ... [valueN] )
, ([value1], [value2], ... [valueN] )
, ([value1], [value2], ... [valueN] )
;
您可以很快将逗号分隔的文件格式化为这种格式。可能类似于:
LOAD DATA INFILE '/where/the/file/is'
INTO TABLE table (email)
FIELDS TERMINATED BY ','
LINES STARTING BY '';
此处的语法文档:将当前的“,”分隔的电子邮件列表转换为每个电子邮件列表一行 tr',''\n'