将月份号转换为月份名称

4szc88ey  于 2021-06-18  发布在  Mysql
关注(0)|答案(1)|浏览(273)

在mysql中是否可以将整数/列转换为月份名称?例如,1变为“jan”或“january”。13及以后给出一个错误,或永远不会使用。

bwitn5fc

bwitn5fc1#

我们可以使用 Str_To_Date() 功能。
现在,我们只需要使用 Monthname() 函数从日期中提取月份名称。
只有当 NO_ZERO_DATE 模式已禁用。
尝试:

SET sql_mode = ''; -- disable NO_ZERO_DATE mode
SELECT MONTHNAME(STR_TO_DATE(1, '%m'));

正如@felk在评论中所建议的,如果我们需要缩短月份名称,我们可以使用 Date_Format() 改为函数:

SET sql_mode = ''; -- disable NO_ZERO_DATE mode
SELECT DATE_FORMAT(STR_TO_DATE(1, '%m'), '%b');

如果你不想禁用 NO_ZERO_DATE 模式,则可以使用月份和调用创建任意随机日期 Monthname() :

SELECT MONTHNAME(CONCAT('2018-',3,'-1')); -- 3 is the input number

相关问题