select to_char(add_months(to_date('2008-03-01','yyyy-mm-dd'),rownum),'yyyy-mm') as ymonth from dual connect by rownum<=months_between(to_date('2008-08-01','yyyy-mm-dd'),to_date('2008-03-01','yyyy-mm-dd'))
select extract(month from mo) from (select rownum ,add_months(to_date(20080301,'YYYYMMdd'),rownum)mo from dual connect by rownum<10);我也是最经刚学oracle,希望能对你有帮助!
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;
from dual
connect by rownum<=months_between(to_date('2008-08-01','yyyy-mm-dd'),to_date('2008-03-01','yyyy-mm-dd'))
select extract(month from mo) from (select rownum ,add_months(to_date(20080301,'YYYYMMdd'),rownum)mo from dual connect by rownum<10);我也是最经刚学oracle,希望能对你有帮助!
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;
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 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