LOAD DATA INFILE可轻松将YYYYMMDD转换为YYYY-MM-DD?

时间:2012-04-11 08:08:01

标签: mysql

您好我要导入的INFILE,但日期格式为:

AADR,20120403,31.43,31.43,31.4,31.4,1100
AAU,20120403,2.64,2.65,2.56,2.65,85700
AAVX,20120403,162.49,162.49,154.24,156.65,2200

有没有简单的方法将日期转换为'2012-04-03'而无需先执行使用perl脚本打开它,转换日期,然后再将文件写回来?

TIA !!

1 个答案:

答案 0 :(得分:23)

这一步加载和转换,不需要另一个表。有关详细信息,请参阅manual

LOAD DATA INFILE 'file.txt'
INTO TABLE t1
FIELDS TERMINATED BY ',' 
(column1, @var1, column3, ...)
SET column2 = STR_TO_DATE(@var1,'%Y%m%d')