You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MySQL中如何将dd mmm yyyy格式日期转换为datetime类型

dd mmm yyyy格式字符串转MySQL datetime类型实现方案

直接使用内置STR_TO_DATE()函数按格式解析字符串即可,按需选择对应写法:

  • 无自定义时间需求:原字符串仅包含日期,转换后默认时分秒为00:00:00

    -- 解析'12 JAN 2021'这类日期字符串
    SELECT STR_TO_DATE('12 JAN 2021', '%d %b %Y');
    

    返回值:2021-01-12 00:00:00,为标准datetime类型。

  • 需要指定固定时分秒(比如目标格式中的12:05:11):解析完日期后追加指定时间即可

    SELECT ADDTIME(STR_TO_DATE('12 JAN 2021', '%d %b %Y'), '12:05:11');
    

    返回值:2021-01-12 12:05:11。

常见问题处理

如果转换结果返回NULL,是因为当前会话的时间语言设置无法识别英文月份缩写,先执行以下语句设置英文locale即可正常解析:

SET lc_time_names = 'en_US';

用到的格式符说明:

  • %d:匹配两位数字的日期(01-31)
  • %b:匹配3位英文缩写月份(JAN/FEB等)
  • %Y:匹配4位数字的年份

内容的提问来源于stack exchange,提问作者Divya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.03 03:48:44