1

我在表的一列中有以下值:一年中的月份为 1、2、3、4、5 ... 12。这些只是数字,而不是日期,或源自日期或类似的东西。

我如何从这些数字中得到月份(写出)?所以如果我这样做

SELECT TO_NUMBER(TO_CHAR(TO_DATE('December', 'Month'), 'MM')) MONTH_NUM FROM DUAL;

我可以得到这个月的号码。但是我如何从数字中得到月份(相反)?如果值为 1,则输出应为一月。如果值为 2,则输出应为二月。依此类推。

4

1 回答 1

2
to_char( to_date( <<the number>>, 
                  'MM' ),
         'fmMonth' )

应该给你你正在寻找的东西。

  1* select to_char( to_date( 1, 'MM' ), 'fmMonth' ) from dual
SQL> /

TO_CHAR(TO_DATE(1,'MM'),'FMMONTH')
------------------------------------
January
于 2012-06-06T18:55:39.093 回答