我正在从CSV文件加载数据,它包含大约70k条记录,在csv文件中,一列的日期格式类似于10/24/2013 5:27:05 PM,在我的表中日期格式就像(datetime 00- 00-0000),所以当我使用下面的命令从csv文件上传数据时,由于时间戳不同而失败了。
LOAD DATA INFILE“/tmp/fulldata.csv”INTO TABLE test.customerorders COLUMNS终止于','由'\ n'终止的行;
如何在我的表格中修复此时间戳以及如何将数据上传到表格中?
答案 0 :(得分:0)
您可以转换如下数据:
SELECT STR_TO_DATE( '10/24/2013 5:27:05 PM', '%m/%d/%Y %I:%i:%s %p' )
并将其存储在日期时间字段
中修改强>: 对于70K记录,LOAD数据文件可以加载得更快。
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' )