【发布时间】:2013-12-11 13:35:40
【问题描述】:
我无法找到将 csv 文件加载到表中的正确语法,同时跳过了表中已经存在的第一列。我的表格列如下所示:
ID COL1 COL2 COL3 LOG_DATE
我的 csv 看起来像这样:
dataForCol1,dataForCol2,dataForCol3
所以我想将 csv 中的值加载到 COL1 COL2 和 COL3 中,跳过 ID。我能得到的最接近的是这样的 SQL:
LOAD DATA LOCAL INFILE 'test.csv'
INTO TABLE test_table
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
(ID,COL1,COL2,COL3,LOG_DATE)
SET ID=0, LOG_DATE=CURRENT_TIMESTAMP
请注意,我不太了解 SQL,也不确定是否正确使用 SET 子句,但此语句将为 LOG_DATE 列提供时间戳,并且它会自动递增 ID 列(ID 是type: int(11)和auto_incerement),但其他数据偏离了一列,因此dataForCol1 缺失,dataForCol2 在COL1 等中。
【问题讨论】: