mysql - 使用不同的日期格式将 CSV 导入 MySQL

标签 mysql csv insert

我第一次将 CSV 导入 MySQL,发现 CSV 中的日期格式为 31-Jan-2011。如何将其转换为 2011-01-31 以便将其放入 DATE 数据类型中?首先想到的是让 PHP 进行转换,然后将其插入到第二个表中,但我猜那是……不对。

最佳答案

您可以在从 CSV 文件导入数据时替换格式,例如 -

LOAD DATA INFILE 'file_name.csv'
INTO TABLE table_name
FIELDS TERMINATED BY ';'
LINES TERMINATED BY '\n'
(id, column2, column3, @date_time_variable) -- read one of the field to variable
SET date_time_column = STR_TO_DATE(@date_time_variable, '%d-%b-%Y'); -- format this date-time variable

它将像 '31-Jan-2011' 这样的字符串格式化为正确的 DATETIME 数据类型。

更多信息在这里 - LOAD DATA INFILE Syntax .

关于mysql - 使用不同的日期格式将 CSV 导入 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8163079/

相关文章:

php - PHP将PDO对象传递给类

Python 2.7 以 .csv 格式导出数据

java - 迭代单链表中的节点以获取字符串输入

mysql - 将一些数据从 MySQL 表的一列移动到另一列

php - 如何遍历一组动态表单输入并将它们插入到多个表中?

mysql - MySQL中REFERENCES关键字的使用

php - 如何在 HEREDOC SQL 查询中使用 PHP 变量?

java - MySQL使用Java从文件中插入大数据集

python - 在 Pandas 中合并两个数据框

csv - OrientDB ETL 在加载 CSV 文件时引发异常