<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    PS,1880后程序員

    看不完的牙,寫不完的程序,跑不完的步。
    隨筆 - 97, 文章 - 34, 評論 - 10, 引用 - 0
    數據加載中……

    Oracle計算指定日期到月末的雙休日的天數

    業務邏輯:
    count=0;
    計算得到指定日期的下一個周日my_nextsunday
    計算得到月末my_lastdate
    IF 下一個周日<=月末 THEN
      周數=(月末-下一個周日的天數)/7
      余數=(月末-下一個周日的天數)%7
      IF 余數!=0 THEN count=1;
      count+=周數*2
      IF DAYOFWEEK(指定日期)=1 THEN count+=2;
      ELSE count+=1;
    ELSE
      計算 DAYOFWEEK(指定日期)-> DWS
      計算 DAYOFWEEK(月末)-> DWE
      IF DWS<=DME THEN --沒有跨周
        IF DWS=1 THEN count+=1;
        IF DWE=7 THEN count+=1;
      ELSE count=2;
    END IF;

    CREATE OR REPLACE FUNCTION WEEKENDDAY( IN_APP_DATE IN DATE)
    RETURN integer IS
        my_lastdate DATE;
        my_nextsunday DATE;
        my_weeks integer;
        my_n_diff integer;
        my_remain integer;
        my_dws integer;
        my_dwe integer;
        out_count integer :=0;
    BEGIN
       my_lastdate:=LAST_DAY(IN_APP_DATE);
       select NEXT_DAY(IN_APP_DATE,1) INTO my_nextsunday from dual;
       my_n_diff:=TRUNC( (  my_lastdate - my_nextsunday ), 0 )+1;
       if(my_nextsunday<=my_lastdate) THEN
         my_weeks:=FLOOR(my_n_diff/7);
         my_remain:=mod(my_n_diff,7);
         if my_remain>0 THEN 
           out_count:=1; 
         END IF;    
         out_count:=out_count+my_weeks*2;
         IF to_number(to_char(IN_APP_DATE,'D'))=1 THEN 
           out_count:=out_count+2;
         ELSE 
           out_count:=out_count+1;
         END IF;   
       ELSE
         my_dws:=to_number(to_char(IN_APP_DATE,'D'));
         my_dwe:=to_number(to_char(my_lastdate,'D'));
         IF my_dws<=my_dwe THEN
           IF my_dws=1 THEN 
             out_count:=out_count+1;
           END IF;    
           IF my_dwe=7 THEN 
             out_count:=out_count+1;
           END IF;    
         ELSE
           out_count:=2;
         END IF;  
       end if;
       return out_count;
    END WEEKENDDAY;

    posted on 2013-08-28 23:15 amenglai 閱讀(315) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 国产免费观看黄AV片| 免费看搞黄视频网站| 国产一级淫片a免费播放口| 天天看片天天爽_免费播放| 一级白嫩美女毛片免费| 亚洲理论片中文字幕电影| 亚洲Aⅴ无码一区二区二三区软件| a在线视频免费观看在线视频三区 a毛片成人免费全部播放 | 亚洲AV无一区二区三区久久| 免费一级成人毛片| 一级毛片免费观看不卡视频| 久久久久久a亚洲欧洲AV| 可以免费看的卡一卡二| 两个人看的www高清免费视频| 色吊丝免费观看网站| 国产精品高清视亚洲一区二区| 亚洲午夜精品久久久久久人妖| 波多野结衣免费视频观看| 午夜老司机免费视频| 免费视频专区一国产盗摄| 免费看片在线观看| 日韩精品免费一级视频| 免费看成人AA片无码视频羞羞网| 95老司机免费福利| 67194熟妇在线永久免费观看| 91精品免费在线观看| 妞干网免费观看视频| 处破痛哭A√18成年片免费| 国产成人精品免费视频大全五级 | 亚洲午夜精品国产电影在线观看| 亚洲欧洲精品视频在线观看| 亚洲乱码一二三四区乱码| 亚洲精品一卡2卡3卡四卡乱码| 特级毛片免费播放| 韩国免费a级作爱片无码| 黄色成人免费网站| 亚洲成a人在线看天堂无码| 亚洲国产精品国自产拍AV| 亚洲精品福利你懂| 亚洲免费无码在线| 成年人免费视频观看|