oracle的sql生成日歷(轉自http://space.itpub.net/519536/viewspace-618320)

           1 select LPAD (Month20 - (20 - LENGTH (month)) / 2month,
           2           "Su",
           3           "Mo",
           4           "Tu",
           5            "We",
           6            "Th",
           7            "Fr",
           8            "Sa"
           9       from (select TO_CHAR (dt, 'fmMonthfm YYYY'month,
          10                   case
          11                      when TO_CHAR (dt, 'fmMonthfm YYYY'like 'Dec%'
          12                      and TO_CHAR (dt + 1'iw'= '01'
          13                      then
          14                         '53'
          15                      when TO_CHAR (dt, 'fmMonthfm YYYY'like 'Jan%'
          16                       and TO_CHAR (dt + 1'iw'= '53'
          17                      then
          18                         '.5'
          19                      else
          20                         TO_CHAR (dt + 1'iw')
          21                   end
          22                      week,
          23                   MAX(DECODE (TO_CHAR (dt, 'd'),
          24                               '1', LPAD (TO_CHAR (dt, 'fmdd'), 2)))
          25                      "Su",
          26                  MAX(DECODE (TO_CHAR (dt, 'd'),
          27                               '2', LPAD (TO_CHAR (dt, 'fmdd'), 2)))
          28                      "Mo",
          29                   MAX(DECODE (TO_CHAR (dt, 'd'),
          30                               '3', LPAD (TO_CHAR (dt, 'fmdd'), 2)))
          31                      "Tu",
          32                   MAX(DECODE (TO_CHAR (dt, 'd'),
          33                               '4', LPAD (TO_CHAR (dt, 'fmdd'), 2)))
          34                      "We",
          35                   MAX(DECODE (TO_CHAR (dt, 'd'),
          36                               '5', LPAD (TO_CHAR (dt, 'fmdd'), 2)))
          37                      "Th",
          38                   MAX(DECODE (TO_CHAR (dt, 'd'),
          39                               '6', LPAD (TO_CHAR (dt, 'fmdd'), 2)))
          40                      "Fr",
          41                   MAX(DECODE (TO_CHAR (dt, 'd'),
          42                               '7', LPAD (TO_CHAR (dt, 'fmdd'), 2)))
          43                      "Sa"
          44              from (select TRUNC (SYSDATE, 'y'- 1 + ROWNUM dt
          45                      from all_objects
          46                     where ROWNUM <=
          47                              ADD_MONTHS (TRUNC (SYSDATE, 'y'), 12)
          48                              - TRUNC (SYSDATE, 'y'))
          49            group by TO_CHAR (dt, 'fmMonthfm YYYY'), TO_CHAR (dt + 1'iw')
          50            order by TO_CHAR (dt + 1'iw'))
          51    order by TO_DATE (month'Month YYYY'), TO_NUMBER (week)

          posted on 2010-04-18 09:58 duduli 閱讀(1700) 評論(0)  編輯  收藏 所屬分類: 數據庫業余DBA

          <2010年4月>
          28293031123
          45678910
          11121314151617
          18192021222324
          2526272829301
          2345678

          導航

          統計

          公告

          welcome to my place.

          常用鏈接

          留言簿(5)

          我參與的團隊

          隨筆分類

          隨筆檔案

          新聞分類

          石頭JAVA擺地攤兒

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          @duduli
          主站蜘蛛池模板: 高平市| 文山县| 金门县| 云和县| 宜阳县| 双牌县| 伊宁市| 上栗县| 黄浦区| 宽城| 镇沅| 水富县| 偃师市| 前郭尔| 邹平县| 荆州市| 康定县| 高安市| 双流县| 德安县| 长白| 江油市| 兰溪市| 和林格尔县| 白河县| 贡嘎县| 惠东县| 望奎县| 丽江市| 四子王旗| 呼图壁县| 玉环县| 措勤县| 左权县| 政和县| 定边县| 翁牛特旗| 武夷山市| 类乌齐县| 曲靖市| 铜梁县|