Mysql SELECT按日期格式为24小时

时间:2017-10-04 14:21:10

标签: php mysql date-format

我正在尝试从表mysql中选择数据,但我需要以军事格式格式化varchar日期列,但无法获得我的搜索结果,我的查询位于下方。

"SELECT STR_TO_DATE(`hour`, '%Y-%m-%d %k:%i') AS `time` FROM `dataTable`"

当我试图回显以下格式的时候出现。

2017-09-21 00:00:00

我的愿望输出低于24小时格式并删除秒数,任何建议都会很棒。

2017-09-21 18:00

1 个答案:

答案 0 :(得分:4)

使用mysql的Date_format功能。

"SELECT DATE_FORMAT(`hour`, '%Y-%m-%d %H:%i') AS `time` FROM `dataTable`"

<强>解释

STR_TO_DATE函数始终以 2008-09-15 22:23:00

的格式返回日期
SELECT STR_TO_DATE('Monday 15th September 2008 22:23:00', '%W %D %M %Y %H:%i:%s');
+----------------------------------------------------------------------------+
| STR_TO_DATE('Monday 15th September 2008 22:23:00', '%W %D %M %Y %H:%i:%s') |
+----------------------------------------------------------------------------+
| 2008-09-15 22:23:00                                                        | 
+----------------------------------------------------------------------------+
1 row in set (0.00 sec)

检查上面的例子:STR_TO_DATE函数中的第二个参数是参数1的格式,告诉函数在函数中传递参数1的格式。

Reference taken from this link.