在MySQL中将字符串长日期转换为日期时间



我从一个表中以字符串的形式获得这个值'Mon Oct 26 16:34:23 CST 2015'

我想使用str_to_date()将此字符串转换为下一个datetime'2015-10-26 16:34:23',如下所示:

select str_to_date('Mon Oct 26 16:34:23 CST 2015','%a %b %d %H:%i:%s %Y') val;

但它会返回一个null值,如果我删除'%Y',我会得到下一个:'0000-10-26 16:34:23'

如何从字符串中跳过'CST'以获得年份值?

使用replace是立竿见影的解决方案,但我不能放弃其他时区格式。

提前,谢谢。

您可以将时区本身包含在格式字符串中。所以,这是有效的:

select str_to_date('Mon Oct 26 16:34:23 CST 2015','%a %b %d %H:%i:%s CST %Y') val;

当然,如果字符串有其他时区,这是不起作用的。

相关内容

  • 没有找到相关文章

最新更新