无论如何从mysql中的月份数得到月份简称? 例如:如果我给3,我需要得到Mar。
答案 0 :(得分:4)
答案 1 :(得分:1)
使用以下功能:
月份编号:MONTH()
月份名称:MONTHNAME()
您应该使用monthname()
功能。
答案 2 :(得分:1)
根据手册,'%b'可以完成您的目标
答案 3 :(得分:0)
有一些选项可以检索它,date_format就是其中之一,但它取决于你想要实现的方式和具体内容。 我建议你看一下MySQL Date文档:
https://dev.mysql.com/doc/refman/4.1/en/date-and-time-functions.html
答案 4 :(得分:0)
SELECT DATE_FORMAT('2013-12-01' + INTERVAL n MONTH, '%b') As Month_Name
将n
更改为月份编号。
答案 5 :(得分:0)
你好,这应该回答你的问题
SELECT left(MONTHNAME(STR_TO_DATE(1, '%m')),3) from dual
当我们不想在mysql中引用表但只是想执行查询时, dual
被用作欺骗表。
答案 6 :(得分:0)
SELECT MONTHNAME(CONCAT(your_column)) as month from table_name;
答案 7 :(得分:0)
我知道这个问题已经老了,但是今天发现它很重要。
解决方案:
SELECT DATE_FORMAT(CONCAT(YEAR(NOW()),'-',LPAD( myMonthInteger ,2,'0'),'-01'),'%b')
将myMonthInteger
的值更改为您的列名或月份索引值(1-12)。对于其他值返回NULL。
对于myMonthInteger使用OP值“ 3”的示例:
SELECT DATE_FORMAT(CONCAT(YEAR(NOW()),'-',LPAD( 3,2,'0'),'-01'),'%b')
返回“ Mar”
说明:
LPAD( myMonthInteger ,2,'0')
根据需要在月份整数中添加前导零。
CONCAT(YEAR(NOW()),'-',LPAD( myMonthInteger ,2,'0'),'-01')
使用当前年份和月份的第一天创建一个有效的mysql日期字符串
DATE_FORMAT(CONCAT(YEAR(NOW()),'-',LPAD( myMonthInteger ,2,'0'),'-01'),'%b')
使用'%b'类型-短月份名称格式化日期字符串