Sql 如何使用oracle从sysdate获取前11个月的名称

Sql 如何使用oracle从sysdate获取前11个月的名称,sql,oracle,Sql,Oracle,如何使用oracle从sysdate获取前11个月的名称 我试着说,我在一些日期之间得到了月份名称 select add_months (trunc (to_date('10/18/2007','MM/DD/YYYY'), 'MM'), 1*Level -1) Month FROM Dual CONNECT BY Level <= MONTHS_BETWEEN(to_date('11/17/2008','MM/DD/YYYY'), to_date('10/18/2007','MM/DD

如何使用oracle从sysdate获取前11个月的名称

我试着说,我在一些日期之间得到了月份名称

select add_months (trunc (to_date('10/18/2007','MM/DD/YYYY'), 'MM'), 1*Level -1)
Month   FROM Dual
CONNECT BY Level <= MONTHS_BETWEEN(to_date('11/17/2008','MM/DD/YYYY'), to_date('10/18/2007','MM/DD/YYYY')) + 1
order by month
选择添加月份(trunc(截止日期('2007年10月18日','MM/DD/YYYY'),'MM'),1*级别-1)
从双月开始的一个月

按级别连接可能您需要这样的功能:

select to_char(add_months (to_date('10/18/2007','MM/DD/YYYY'), -1* Level), 'Mon-YYYY')
Month   
FROM Dual
CONNECT BY Level <= 11
order by month
选择至字符(添加至月份(至日期('2007年10月18日','MM/DD/YYYY'),-1*级,'Mon YYYY'))
月
来自双重

按级别连接可能您需要这样的功能:

select to_char(add_months (to_date('10/18/2007','MM/DD/YYYY'), -1* Level), 'Mon-YYYY')
Month   
FROM Dual
CONNECT BY Level <= 11
order by month
选择至字符(添加至月份(至日期('2007年10月18日','MM/DD/YYYY'),-1*级,'Mon YYYY'))
月
来自双重
按级别连接您可以使用以下方法:

SELECT TO_CHAR( ADD_MONTHS(SYSDATE,-1*LEVEL  ),'MON') MONTH_NAME
    FROM DUAL
CONNECT BY LEVEL  <= MONTHS_BETWEEN(   TRUNC(SYSDATE,'MM')  , ADD_MONTHS( TRUNC(SYSDATE,'MM'),-11))
 ORDER BY LEVEL
选择月(添加月(SYSDATE,-1*级),'MON')月名称
来自双重
按级别连接您可以使用以下方法:

SELECT TO_CHAR( ADD_MONTHS(SYSDATE,-1*LEVEL  ),'MON') MONTH_NAME
    FROM DUAL
CONNECT BY LEVEL  <= MONTHS_BETWEEN(   TRUNC(SYSDATE,'MM')  , ADD_MONTHS( TRUNC(SYSDATE,'MM'),-11))
 ORDER BY LEVEL
选择月(添加月(SYSDATE,-1*级),'MON')月名称
来自双重

按级别连接您的问题到底是什么?我需要从sysdate获取最近11个月的名称。例如:sysdate=2016年10月24日,最近11个月的名称2016年9月、2016年8月、2016年7月……诸如此类您的查询有什么问题?在日期之间打印月份名称。。。这是不正确的,因为…?你的问题到底是什么?我需要从sysdate获取最近11个月的名称。例如:sysdate=2016年10月24日,最近11个月的名称2016年9月、2016年8月、2016年7月…就像这样,你的查询有什么问题?在日期之间打印月份名称。。。这是不正确的,因为。。。?