Мне нужно импортировать csv в мою базу данных mysql, но проблема в том, что один из столбцов имеет в качестве даты, а дата выглядит как дд / мм / гггг , поэтому перед импортом мне нужно преобразовать его в универсальный стандарт.
Это также должна быть вещь командной строки, ничего особенного или сложного, поскольку я собираюсь автоматизировать эту процедуру.
LOAD DATA LOCAL INFILE 'C:\\myfile.csv'
REPLACE INTO TABLE `audb`.`audit`
FIELDS TERMINATED BY ';'
LINES TERMINATED BY '\r\n'
IGNORE 1 LINES (
@date`,
`name`,
`place`,
`state`
)
set date = STR_TO_DATE(date, '%Y-%m-%d');
Ошибка:
/* SQL Error (1064): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')
set date= STR_TO_DATE(date, '%Y-%m-%d')' at line 20 */
Как я могу это исправить?
Ниже приведен фиксированный код:
LOAD DATA LOCAL INFILE 'C:\\myfile.csv'
REPLACE INTO TABLE `audb`.`audit`
FIELDS TERMINATED BY ';'
LINES TERMINATED BY '\r\n'
IGNORE 1 LINES (
@date`,
`name`,
`place`,
`state`
)
set date = STR_TO_DATE(@date, '%Y-%m-%d');
Мне также нужно заменить определенную строку на 0 , как я могу использовать несколько SET в строке?