我想在MySQL中更改日期时间格式。
我有一张历史表,其中一些列的格式为DATETIME:
JJ/MM/AAAA HH:MM
我需要修改为:
AAAA-MM-JJ HH:MM:SS
我没有SS变量,我希望它变成00。
示例:
01/12/2012 12:23 > 2012-12-01 12:23:00
谢谢
我想在MySQL中更改日期时间格式。
我有一张历史表,其中一些列的格式为DATETIME:
JJ/MM/AAAA HH:MM
我需要修改为:
AAAA-MM-JJ HH:MM:SS
01/12/2012 12:23 > 2012-12-01 12:23:00
谢谢
你需要使用Format函数来实现这个目的
对于上面的情况,你可以使用以下代码:
SELECT DATE_FORMAT([YOURCOLUMNNAME],'%Y-%m-%d %h:%i:%s') from [YOURTABLENAME];
你可以参考这个链接来进行所有的转换。
http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_date-format
使用date_format()函数
尝试以下代码:
SELECT date_format(columnname,'%Y-%m-%d %h:%i:%s') as yourdate FROM tablename
所有已发布的答案都不可行,因为您的数据将无法识别为日期。请改用字符串转换:
UPDATE tablename SET columnname = CONCAT(SUBSTR(columnname,7,4),'-',SUBSTR(columnname,4,2),'-',SUBSTR(columnname,1,2),SUBSTR(columname,11),':00');