MySQL以mm / dd / yyyy格式加载日期

时间:2012-02-13 17:57:05

标签: mysql parsing csv

我有一个几乎可以运行的MySQL加载脚本,除了日期列之外它是完美的,它们不是MySql友好格式。

load data infile  '/Users/pfarrell/sandbox/waybase/folklore/Titles_1976.csv'
into table fix76
fields terminated by ','
enclosed by '"'
ignore 1 lines
(  patentId,  USPatentNum,  title,  grantDate,  filedDate)

问题是我的日期是mm / dd / yyyy格式。看起来像str_to_date 功能是我想要的,但我无法弄清楚如何在加载命令中使用它 我想象的是:

  grantDate = STR_TO_DATE(something, '%m/%d/%Y'),

但这不起作用。

1 个答案:

答案 0 :(得分:8)

您可以将日期字符串加载到用户定义的变量中,然后使用STR_TO_DATE(@date, '%m/%d/%Y')将它们转换为MySQL日期。

试试这个:

load data infile  '/Users/pfarrell/sandbox/waybase/folklore/Titles_1976.csv'
into table fix76
fields terminated by ','
enclosed by '"'
ignore 1 lines
(  patentId,  USPatentNum,  title,  @grantDate,  @filedDate)
set grantDate = STR_TO_DATE(@grantDate, '%m/%d/%Y'),
filedDate = STR_TO_DATE(@filedDate, '%m/%d/%Y')
相关问题