【问题标题】:mysql convert String to datetime formatmysql 将字符串转换为日期时间格式
【发布时间】:2018-08-27 15:33:35
【问题描述】:

在 MySQL 中试图将字符串转换为日期时间格式,但它返回 null 值。

将下面的字符串转换为日期时间格式的正确方法是什么?

> select STR_TO_DATE('8/16/18 7:00 PM', '%c/%e/%Y %r');
+-------------------------------------------------+
| STR_TO_DATE('8/16/18 7:00 PM', '%c/%e/%Y %r')   |
+-------------------------------------------------+
| NULL                                            |
+-------------------------------------------------+

谢谢

【问题讨论】:

    标签: mysql


    【解决方案1】:

    你必须匹配格式,%r 不匹配 7:00 PM

    发件人:https://www.w3schools.com/sql/func_mysql_str_to_date.asp

    %r = Time in 12 hour AM or PM format (hh:mm:ss AM/PM)
    

    如您所见,需要两位数的小时和秒,而您没有。

    您也不匹配年份 %Y 期望的四位数年份...所以我将其更改为 %y

    试试这样。

    select STR_TO_DATE('8/16/18 7:00 PM', '%c/%e/%y %l:%i %p');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-10
      • 1970-01-01
      • 1970-01-01
      • 2016-10-08
      • 2018-05-17
      相关资源
      最近更新 更多