Mysql 加载文件中的Str_to_date导致空值

Mysql 加载文件中的Str_to_date导致空值,mysql,database,csv,Mysql,Database,Csv,我要针对的表中的字段是 发送日期 这是CSV的一部分和下面的导入查询。为什么日期字段设置为空 1,"1/21/2013","0",1 2,"2/27/2013","0",1 这就是SQL LOAD DATA LOCAL INFILE 'C:/Users/Me/CSV.csv' INTO TABLE Collections FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED

我要针对的表中的字段是 发送日期

这是CSV的一部分和下面的导入查询。为什么日期字段设置为空

1,"1/21/2013","0",1
2,"2/27/2013","0",1
这就是SQL

   LOAD DATA LOCAL INFILE 'C:/Users/Me/CSV.csv'
     INTO TABLE Collections
     FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
     LINES TERMINATED BY '\r\n'
(`id`, @DATE_STR, `col`, `sid`)
SET `date_sent` = STR_TO_DATE(@DATE_STR, '%m/%d/%Y')

您需要改用
%c
(也可能是
%e


尝试使用此日期格式:

STR_TO_DATE(@DATE_STR, '%c/%e/%Y')
  • %c
    是数字月份,
    0..12
    %m
    是格式为
    00..12
  • %e
    是一个月中的数字日,
    0..31
    %d
    是格式为
    00..31
请参阅的文档

%c        Month, numeric (0..12)
%e        Day of the month, numeric (0..31)
STR_TO_DATE(@DATE_STR, '%c/%e/%Y')