0

我正在从 CSV 文件加载数据,它包含大约 70k 条记录,一列的 csv 文件日期格式就像 10/24/2013 5:27:05 PM,在我的表格中日期格式就像(日期时间 00-00-0000 ) ,所以当我使用下面的命令上传数据表单 csv 文件时,由于时间戳不同而失败。

LOAD DATA INFILE "/tmp/fulldata.csv" INTO TABLE test.customerorders COLUMNS TERMINATED BY ',' LINES TERMINATED BY '\n';

如何在我的表中修复这个时间戳以及如何将数据上传到表中?

4

1 回答 1

0

您可以像下面这样转换数据:

SELECT STR_TO_DATE( '10/24/2013 5:27:05 PM', '%m/%d/%Y %I:%i:%s %p' )

并将其存储在日期时间字段中

编辑: LOAD 数据文件可以更快地加载 70K 记录。

LOAD DATA LOCAL INFILE '/filelocationfromroot' INTO TABLE `yourtablename` 
FIELDS TERMINATED BY ',' ENCLOSED BY '"'
LINES TERMINATED BY '\n'
(
`tablefieldforfirstcsvcolumn`,`tablefieldforsecondcsvcolumn`,...,@yourdatecolumn,
)
SET `datacolumnname`=STR_TO_DATE( @yourdatecolumn, '%m/%d/%Y %I:%i:%s %p' )
于 2013-10-25T05:40:17.980 回答