以“天”为单位
select to_char(min_date+rownum-1,'yyyy-mm-dd') datestr
from
(
select to_date('2011-06-07','yyyy-mm-dd') max_date,to_date('2011-06-01','yyyy-mm-dd') min_date
from dual
)
connect by rownum<=(max_date-min_date)以“月”为单位
select to_char(add_months(to_date('2011-06-01','yyyy-mm-dd'),rownum-1),'yyyy-mm-dd') datestr
from dual
connect by rownum<=months_between(to_date('2011-06-01','yyyy-mm-dd'),to_date('2011-01-01','yyyy-mm-dd'))以“季度”为单位
select to_char(add_months(to_date('2011-01-01','yyyy-mm-dd'),(rownum-1)*3),'yyyy-MM') datestr
from dual
connect by rownum<=(months_between(to_date('2011-10-01','yyyy-mm-dd'),to_date('2011-01-01','yyyy-mm-dd'))/3)以“年”为单位
select to_number(substr('2009-01-01',0,4))+rownum-1 datestr
from dual
connect by rownum<=to_number(substr('2011-01-01',0,4))-to_number(substr('2009-01-01',0,4))
------------------------------------------------------------------------------------------------------
本文介绍如何使用Oracle SQL通过不同时间单位(天、月、季度、年)生成日期序列。通过具体的SQL语句示例,展示了如何从指定的起始日期到结束日期生成连续的日期值。

613

被折叠的 条评论
为什么被折叠?



