2011-03-18 24 views
0

表:转换UNIX时间在MySQL与FROM_UNIXTIME()以DATETIME

enter image description here

我不知道是否有一种方法对我所有的时间标记转换成使用FROM_UNIXTIME本地MySQL的日期时间(YYYY-MM-DD HH:MM:SS)() ,但我对可以从中得到的例子缺乏了解。 MySQL不是我的功夫。

+0

'FROM_UNIXTIME'正是这样。你的问题是什么? – Quassnoi 2011-03-18 21:58:07

回答

6

我假设你想用本地mysql datetime字段替换unix timestamp字段。要做到这一点,你需要一个新的字段添加到您的日期时间类型的表:

ALTER TABLE yourtable ADD newdatetimefield DATETIME NOT NULL; 

然后你的桌子上做一个更新:

update yourtable set newdatetimefield=from_unixtime(timestampfield); 

然后你可以删除旧的Unix时间戳字段:

alter table yourtable drop timestampfield; 

和新领域重命名为旧名称

alter table yourtable change newdatetimefield timestampfield datetime; 
+0

另外:如果'timestampfield'上有一个或多个'index'或者其他引用'timestampfield'的表中有'foreign key':在'newdatetimefield'上添加新的索引和引用并删除旧的。 – 2011-03-18 22:10:28