2013-07-01 23 views
0

如果我想要获取March 2013November之间的数据(对于每个月,所有日常数据 将被汇总成一个月度数据),我认为我所做的是正确的。 但它给了我186 rows(所有日期从MarchNovember)的结果,而不是给予 只是99两个月之间)。在ibatis获取两个月之间的数据

由于某种原因,我只得到1数据为November

任何人都可以解决这个问题吗?

SELECT 
    TO_CHAR (TO_DATE ('201305','YYYYMM')+LEVEL- 1, 'YYYYMM') AS MONTH 
     FROM DUAL 
     CONNECT BY TO_DATE('201305', 'YYYYMM') + LEVEL - 1 <= TO_DATE('201311', 'YYYYMM') 

回答

1

这是你想要的吗?

SELECT TO_CHAR(ADD_MONTHS(TO_DATE('201303','YYYYMM'),LEVEL-1), 'YYYYMM') AS Month 
    FROM DUAL 
CONNECT BY ADD_MONTHS(TO_DATE('201303','YYYYMM'),LEVEL-1) <= TO_DATE('201311', 'YYYYMM'); 

输出:

Month 
------- 
201303 
201304 
201305 
201306 
201307 
201308 
201309 
201310 
201311 
相关问题