2013-03-07 86 views
2

我有datetime作为char(30)存储在表中,我想将它们转换为mysql标准日期时间格式。如何将Char字段转换为mysql中的datetime字段?

所以我想这个

SELECT STR_TO_DATE(next_attempt, '%Y-%m-%d %T') as date FROM Table LIMIT 10; 

这是返回NULL始终! 这是目前的格式(5/16/2011 20:14)所以在我的char(30)字段中我有(2011/5/16 20:14),我想将它转换为(2011-05-16 20 :14:00)

我做错了它,以保持返回空?

感谢

回答

3

尝试替换 “/” 为 “” 和使用 '%M,%d,%Y%T'

STR_TO_DATE(replace('5/16/2011 20:14','/',','),'%m,%d,%Y %T') 

在这里工作得很好:

select STR_TO_DATE(replace('5/16/2011 20:14','/',','),'%m,%d,%Y %T') as date from dual 
+0

谢谢为你的答案。那不幸的是,这并不奏效。 – Jaylen 2013-03-07 19:56:32

+0

现在工作。我不知道为什么当我替换时它不起作用。任何方式非常感谢你:) – Jaylen 2013-03-07 20:03:14

+0

你的字符是padronized?总是'月/日/年的时间',因为我为我执行slq,它工作... – rcorbellini 2013-03-07 20:04:52

相关问题