每个月1号:
last_day(sysdate)+1
每个季度的第一天:
to_date(decode(to_char(sysdate,'q'),'1',to_char(sysdate,'yyyy')||'0101',
    '2',to_char(sysdate,'yyyy')||'0401','3',to_char(sysdate,'yyyy')||'0701',
    '4',to_char(sysdate,'yyyy')||'1001'),'yyyymmdd')
每天:
sysdate+1
每个星期几:
decode(to_char(sysdate,'w'),'1',sysdate+7,
to_char(sysdate,'w'),'2',sysdate+6,to_char(sysdate,'w'),'3',sysdate+5,
to_char(sysdate,'w'),'4',sysdate+4,to_char(sysdate,'w'),'5',sysdate+3,
to_char(sysdate,'w'),'6',sysdate+2,to_char(sysdate,'w'),'7',sysdate+1)

解决方案 »

  1.   

    每个月1号
    SQL> select last_day(sysdate)+1 from dual;LAST_DAY(S
    ----------
    01-11月-03每天
    sysdate+1
      

  2.   

    我来补充:
    每个月1号:dbms_job.interval(21, 'last_day(sysdate)+1)');每天:interval(21,'sysdate+2');每个星期x:interval(21,'next_day(sysdate,x)');  1<=x<=7每个星期x下午三点:interval(21, 'next_day(trunc(sysdate),x+1)+15/24');每个季度的第一个星期x:
    interval(21, 'next_day(trunc(sysdate,''Q''),3),5)');