取系统日期,假如系统日期为2008-03-11,则需要生成这样的日期格式:
200712,200701,200702.也就是说取当前日期的年月(200803),然后往前推三个月,格式也是年月。

解决方案 »

  1.   


    select to_char(sysdate,'yyyymm') yearmonth from dual 
    union
    select to_char(add_months(sysdate,-1),'yyyymm') from dual 
    union
    select to_char(add_months(sysdate,-2),'yyyymm') from dual 
    union
    select to_char(add_months(sysdate,-3),'yyyymm') from dual----------------------------------------------------------
        YEARMONTH
    1 200712
    2 200801
    3 200802
    4 200803
      

  2.   


    select *
    from
    (
    select add_months(trunc(sysdate, 'month'), -rownum)
      from dual
     connect by rownum <= 3
    )
    /
      

  3.   


    select the_day, to_char(the_day, 'yyyymm')
    from
    (
    select add_months(trunc(sysdate, 'month'), -rownum) the_day
      from dual
     connect by rownum <= 3
    )
    /