–MTD
SELECT TO_CHAR(trunc(sysdate,‘MM’)+ROWNUM-1,‘yyyy-MM-dd’) DATA_DAY FROM DUAL CONNECT BY ROWNUM<=trunc(trunc(sysdate)-trunc(sysdate,‘mm’));
–last30day
SELECT TO_CHAR(sysdate-30+ROWNUM-1,‘yyyy-MM-dd’) DATA_DAY FROM DUAL CONNECT BY ROWNUM<=30;
–Data Select
SELECT to_char(to_date(‘2022-01-02’,‘yyyy-mm-dd’)+rownum-1,‘yyyy-mm-dd’) DATA_DAY FROM DUAL CONNECT BY ROWNUM<=(to_date(‘2022-01-07’,‘yyyy-mm-dd’)-to_date(‘2022-01-02’,‘yyyy-mm-dd’))
select to_date(to_char(sysdate-level+1,‘yyyy-mm-dd’),‘yyyy-mm-dd’) da,0 wo
from dual connect by level <= 365
union
select to_date(to_char(sysdate+level,‘yyyy-mm-dd’),‘yyyy-mm-dd’) da,0 wo
from dual connect by level <= 365
order by da;
declare
temp integer:=10000;
begin
for i in 1…temp
loop
if to_date(to_char(sysdate-i,‘yyyy-mm-dd’),‘yyyy-mm-dd’)=to_date(‘2030-12-31’,‘yyyy-mm-dd’) then
exit;
end if;
insert into cimrpt.f5rpt_mpcplan(fab_date) values(to_char(trunc(sysdate+i),‘yyyy-mm-dd’));
end loop;
commit;
end;