将非标准日期格式的 CSV 导入 MySQL
将 CSV 文件导入 MySQL 时,您可能会遇到以下情况:与 DATE 数据类型不兼容的格式,例如“31-Jan-2011”。要解决此问题,需要在导入过程中转换日期。
一种方法是在将数据插入表之前使用 PHP 执行转换。然而,更有效的选择是在导入过程中直接处理转换。
要实现此目的,您可以使用 LOAD DATA INFILE 语句并指定自定义日期格式。下面是一个示例:
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
在此示例中,STR_TO_DATE 函数用于将字符串“31-Jan-2011”转换为 DATETIME 值。 %d-%b-%Y 格式说明符告诉函数原始日期的格式为日-月-年 (DD-MM-YYYY)。
通过在导入过程中执行此转换,您可以确保日期以正确的格式存储在数据库中。
以上是如何将包含非标准日期的 CSV 导入 MySQL?的详细内容。更多信息请关注PHP中文网其他相关文章!