17,140
社区成员




SELECT TO_NUMBER(TO_CHAR(TO_DATE('2008-03', 'yyyy-mm'), 'MM')) + ROWNUM - 1 MONTH
FROM DUAL
CONNECT BY ROWNUM <=
MONTHS_BETWEEN(TO_DATE('2008-08', 'yyyy-mm'),
TO_DATE('2008-03', 'yyyy-mm')) + 1
输出:
MONTH
3
4
5
6
7
8
select 1 as m from dual
union all
select 2 from dual
union all
select 3 from dual
union all
select 4 from dual
union all
select 5 from dual
union all
select 6 from dual
union all
select 7 from dual
union all
select 8 from dual
union all
select 9 from dual
union all
select 10 from dual
union all
select 11 from dual
union all
select 12 from dual;
select extract(month from mo) from (select rownum ,add_months(to_date(20080301,'YYYYMMdd'),rownum)mo from dual connect by rownum<10);
SELECT TO_NUMBER (TO_CHAR (TO_DATE ('2008-03', 'yyyy-mm'), 'MM'))
+ ROWNUM
- 1 "Month"
FROM all_objects
WHERE ROWNUM <=
MONTHS_BETWEEN (TO_DATE ('2008-08', 'yyyy-mm'),
TO_DATE ('2008-03', 'yyyy-mm')
)
+ 1