ЗАГРУЗИТЬ ДАННЫЕ ЛОКАЛЬНЫЙ ИНФИЛЬ Формат даты из csv

Я пытался вытащить файл в таблицу, и единственная проблема, которую я имею, это импорт дат (в настоящее время 'MM/DD/YY' формат). Независимо от того, что я пытаюсь, они в конечном итоге выглядят '0008-12-14', Эта дата 8/12/14 в файле .csv. Я старался

SET ShipDate = STR_TO_DATE(@ShipDate,'%Y%m%d')

но потом он импортировал их как NULL, Поле таблицы установлено как DATE, Вот код:

$query = <<<eof
LOAD DATA LOCAL INFILE 'file.csv'
INTO TABLE HS_import
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
IGNORE 1 LINES
(AmountPaid,
ShipDate)
SET ShipDate = STR_TO_DATE(@ShipDate,'%Y%m%d')
eof;

0

Решение

Ваш формат STR_TO_DATE неверен. Он должен указывать формат INPUT, а не формат OUTPUT:

SET ShipDate = STR_TO_DATE(@ShipDate,'%d%m%y')

Так что все это должно выглядеть

  LOAD DATA LOCAL INFILE 'file.csv'
INTO TABLE HS_import
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
IGNORE 1 LINES
(AmountPaid, @ShipDate)
SET ShipDate = STR_TO_DATE(@ShipDate,'%d%m%y')
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]