将日期转换为Mysql格式

6

我有一个日期,格式如下:

May 30 2006 12:00AM

是否有 MySQL 中的 strtotime() 等效函数可以让我将其转换为 MySQL 日期?

2个回答

16

我想你正在寻找STR_TO_DATE函数。不幸的是,它并不像PHP的strtotime那样强大,所以你必须给它提供一个格式掩码来解析:

mysql> SELECT STR_TO_DATE('04/31/2004', '%m/%d/%Y');
        -> '2004-04-31'

对于你的日期,我认为掩码应该是%M %e %Y %l:%i%p,具体取决于你是否期望使用短/长月份名称和0为基础的日期。根据你的示例,它可能是以下任何一种:

mysql> SELECT STR_TO_DATE('May 30 2006 12:00AM', '%M %e %Y %l:%i%p');
+--------------------------------------------------------+
| STR_TO_DATE('May 30 2006 12:00AM', '%M %e %Y %l:%i%p') |
+--------------------------------------------------------+
| 2006-05-30 00:00:00                                    |
+--------------------------------------------------------+
1 row in set (0.00 sec)

查看完整的引用表以获取掩码选项。


2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接