mysql - CSV 日期格式转换为 MySQL 日期格式

标签 mysql csv phpmyadmin

当我尝试将 CSV 文件导入 MySQL 时,所有日期都变为 0000-00-00

CSV 日期格式为 DD/MM/YYYY,例如 16/11/2016。

MySQL 格式为:YYYY/MM/DD。我正在使用 phpmyadmin 导入它。如何解决这个日期传输问题?

最佳答案

格式DD/MM/YYYY在MySQL中不是有效的日期。您可以使用LOAD DATASTR_TO_DATE将日期字符串解析为MySQL可以识别的实际日期:

LOAD DATA INFILE 'path/to/file.csv'
INTO TABLE yourTable FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n' 
(
    col1, col2, @var1, col4
)
SET date_col = STR_TO_DATE(@var1, '%d/%m/%Y')

上面假设您的表格有 4 列,并且您从 CSV 文件中读取的第三列是麻烦的日期。这里的技巧是每个日期字符串都会即时映射到有效的日期类型,从而得到您想要的结果。

关于mysql - CSV 日期格式转换为 MySQL 日期格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45072295/

相关文章:

Php Mysqli 未定义函数

mysql - 如何在 MySQL 中返回数据透视表输出?

mysql - 您如何在mysql的同一张表上两次连接?

php - 将 CSV 文件直接导入 MySQL

php - 在Ubuntu 16.04上无法访问http://ip/phpmyadmin

PhpMyAdmin 外键约束不起作用

php - 按类别搜索产品

mysql - 如何生成 SQL 查询

mysql - 将大 csv 文件导入 mySql

python - 求和一列值,包括 Python 中的字母