修复旧的MySQL日期字段错误

时间:2011-12-30 03:21:14

标签: php mysql datetime date

我的表格中有一个日期字段,用于存储工作日,日月,年字符串中表单的日期。

示例:2010年11月2日星期三

该字段也是varchar。

我可以使用php脚本遍历整个表格,将日期转换为mysql日期格式或使用SQL查询执行此操作吗?

我不确定我是否可以执行某些某些统计报告,这些报告涉及以我现在的格式挑选某些日期和日期范围。我有什么选择?

2 个答案:

答案 0 :(得分:2)

无需涉及PHP。它可以直接在MySQL中完成:

ALTER TABLE yourtable ADD fixeddate date;
UPDATE yourtable SET fixeddate=STR_TO_DATE(bad_date_field, '%W, %d, %M %Y');

相关文档:http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_str-to-date

答案 1 :(得分:1)

PHP有一个名为DateTime的内置类。这是一段代码片段,可以帮助您入门。

$date = DateTime::createFromFormat('l, d, F Y', 'Wednesday, 02, November 2010');
echo $date->format('Y-m-d');

您可以在http://au.php.net/manual/en/book.datetime.php

找到有关此课程的更多信息