欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

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

更新时间: 2014-01-05 02:14:29 责任编辑: Author_N1

 

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

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
----------------------
1 2012-11
2 2012-12
3 2013-01
4 2013-02
5 2013-03

上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:14:29
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/7412/
本文WWW.DOC100.NET DOC100.NET版权所有。