LOAD DATA LOCAL,如何跳过第一行?

Posted

技术标签:

【中文标题】LOAD DATA LOCAL,如何跳过第一行?【英文标题】:LOAD DATA LOCAL, How do I skip the first line? 【发布时间】:2010-12-09 18:06:58 【问题描述】:

我正在尝试将 CSV 文件加载到我的 mysql 数据库中, 但我想跳过第一行。

我实际上它包含我的列的名称并且没有有趣的数据。

这是我正在使用的查询:

LOAD DATA LOCAL INFILE '/myfile.csv' 
INTO TABLE tableName
FIELDS TERMINATED BY ','
ENCLOSED BY '\"' 
LINES TERMINATED BY '\n' 
(column,column,column);

【问题讨论】:

【参考方案1】:

试试这个:

IGNORE N LINES
LOAD DATA INFILE "/path/to/file.csv"
INTO TABLE MYTABLE 
COLUMNS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 LINES;

【讨论】:

【参考方案2】:

对于那些好奇的人,IGNORE N LINES 应该在分隔符限定符之后:

LOAD DATA LOCAL INFILE '/myfile.csv' 
INTO TABLE tableName
FIELDS TERMINATED BY ','
ENCLOSED BY '\"' 
LINES TERMINATED BY '\n' 
IGNORE 1 LINES
(column,column,column);

【讨论】:

您对 IGNORE 位置的注释是 KEY!【参考方案3】:
LOAD DATA INFILE '/tmp/test.txt' INTO TABLE test IGNORE 1 LINES;

(reference)

【讨论】:

我有一个问题。让我们忽略第 5 行;举个例子。那会忽略第 5 行还是第 1-5 行? @EatSleepCode,它会忽略前 N 行,所以第 1 到第 5 行,最后包含。

以上是关于LOAD DATA LOCAL,如何跳过第一行?的主要内容,如果未能解决你的问题,请参考以下文章

使用streamreader读取csv时如何跳过第一行

BufferedReader 跳过第一行

为啥 takewhile() 会跳过第一行?

使用 CSV 文件在循环中跳过第一行(字段)? [复制]

sh AWK跳过第一行

Python跳过第一行读取文件内容