将日期字符串转换为 mysql 日期时间字段

2022-08-30 09:51:04

我有一堆记录,其日期格式为字符串,例如“04/17/2009”

我想将它们转换为mysql日期时间字段

我计划使用foreach循环来读取旧的日期值,并将新格式化的值插入到每条记录的新字段中

转换该字符串的最佳方法是什么...我认为php可能有办法自动做到这一点?

谢谢


答案 1

首先,将字符串转换为时间戳:

$timestamp = strtotime($string);

然后执行一个

date("Y-m-d H:i:s", $timestamp);

答案 2

如果这些字符串当前在数据库中,则可以使用 mysql 的 STR_TO_DATE() 函数跳过 php。

我假设字符串使用类似于where的格式,并且始终是2位数字,并且是4位数字。month/day/yearmonthdayyear

UPDATE some_table
   SET new_column = STR_TO_DATE(old_column, '%m/%d/%Y')

您可以使用其他格式说明符支持其他日期格式


推荐