MySQL Format Date с помощью команды Load Data - PullRequest
0 голосов
/ 30 января 2019

Здравствуйте. Я пытаюсь загрузить данные из файла CSV, но мне нужно отформатировать дату при загрузке файла.

Формат даты моего csv-файла: 01.01.2008 0:00 Я хотел бы отформатировать дату и год только с помощью команды загрузки

load data infile 'C:/mysql/ca_pop_educational_attainment.csv'
into table ca_pop.educational_attainment
fields terminated by ','
enclosed by '"'
ignore line 1
set year = STR_TO_DATE(@year,"%Y")
(ea_id, @year, age, educational_attainment, personal_income,pop_count)  

1 Ответ

0 голосов
/ 30 января 2019

Список столбцов должен предшествовать предложению SET.То есть вы перечисляете столбцы или переменные для импорта, а затем вы можете установить отдельные столбцы.

Кроме того, вам необходимо использовать STR_TO_DATE () для разбора всей строки в дату.Затем вы можете заключить это в другую функцию или выражение, чтобы извлечь отдельные части, например, год.

Что-то вроде следующего, но я не проверял это:

load data infile 'C:/mysql/ca_pop_educational_attainment.csv'
into table ca_pop.educational_attainment
fields terminated by ','
enclosed by '"'
ignore line 1
(ea_id, @year, age, educational_attainment, personal_income, pop_count)  
set year = YEAR(STR_TO_DATE(@year,'%m/%d/%Y %k:%i'))
...