首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

求教一个oracle的查询有关问题

2013-10-11 
求教一个oracle的查询问题求教,我想要得到一个日期范围内月份的结果集,比如2012-11-2到2013-3-12,我想得到

求教一个oracle的查询问题
求教,我想要得到一个日期范围内月份的结果集,比如2012-11-2到2013-3-12,我想得到的一列数据结果集是:
----------------------------------------
2012-11
2012-12
2013-01
2012-02
2013-03 oracle
[解决办法]


SELECT TO_CHAR(ADD_MONTHS(TO_DATE('2012-11-02','YYYY-MM-DD'),ROWNUM-1),'YYYY-MM-DD') FROM DUAL CONNECT BY ROWNUM<=5

[解决办法]
SELECT TO_CHAR(ADD_MONTHS(TO_DATE('2012-11-2', 'YYYY-MM-DD'), ROWNUM -1),'YYYY-MM') AS MONTH
 FROM DUAL CONNECT BY 
 ROWNUM <= (SELECT MONTHS_BETWEEN(TO_DATE('2013-3-12', 'YYYY-MM-DD'),TO_DATE('2012-11-2', 'YYYY-MM-DD'))FROM DUAL)+1
[解决办法]
按月份计算月份差 


select to_char(add_months(date'2012-11-02',level-1),'yyyy-mm') t1
from dual
connect by level < months_between(to_date(substr('2013-03-12',1,7),'yyyy-mm')
        ,to_date(substr('2012-11-02',1,7),'yyyy-mm'))+2


     T1
----------------------
12012-11
22012-12
32013-01
42013-02
52013-03

热点排行