Oracle Calendar

SELECT Initcap(TRIM(To_Char(Dat, 'month'))) || ', ' ||
        To_Char(SYSDATE, 'yyyy') MONTH,
        MAX(Decode(To_Char(Dat, 'd'), 2, To_Char(Dat, 'dd'))) Mon,
        MAX(Decode(To_Char(Dat, 'd'), 3, To_Char(Dat, 'dd'))) Tue,
        MAX(Decode(To_Char(Dat, 'd'), 4, To_Char(Dat, 'dd'))) Wed,
        MAX(Decode(To_Char(Dat, 'd'), 5, To_Char(Dat, 'dd'))) Thu,
        MAX(Decode(To_Char(Dat, 'd'), 6, To_Char(Dat, 'dd'))) Fri,
        MAX(Decode(To_Char(Dat, 'd'), 7, To_Char(Dat, 'dd'))) Sat,
        MAX(Decode(To_Char(Dat, 'd'), 1, To_Char(Dat, 'dd'))) Sun
   FROM (SELECT Trunc(SYSDATE, 'y') + Rownum - 1 Dat,
                To_Char(Trunc(SYSDATE, 'y') + Rownum - 1, 'iw') Woy
           FROM All_Objects --可以换成ALL_OBJECT
          WHERE Rownum <=
                (Add_Months(Trunc(SYSDATE, 'y'), 12) - Trunc(SYSDATE, 'y')))
  GROUP BY To_Char(Dat, 'month'), Woy, To_Char(Dat, 'mm')
  ORDER BY To_Char(Dat, 'mm'), 8;

 

posted on 2021-08-13 20:01  癫狂编程  阅读(152)  评论(0编辑  收藏  举报

导航

好的代码像粥一样,都是用时间熬出来的