两种方法分析每月工作日计算程序

2016-01-29 14:40 48 1 收藏

两种方法分析每月工作日计算程序,两种方法分析每月工作日计算程序

【 tulaoshi.com - Oracle教程 】


 SQL SELECT TEXT FROM USER_SOURCE WHERE TYPE='PROCEDURE' AND NAME='GZR';
  
  TEXT                                                
  ----------------------------------------------------------------------------------------------------
  procedure gzr(v_nowdate in varchar2) as                              
  v_firstsaturday varchar2(10);                                   
  v_outdate date;                                          
  v_countworkday number(10);                                     
  begin                                               
        select to_char(next_day(to_date(concat(v_nowdate,'01'),'yyyymmdd'),1)-1,'dd')         
       into v_firstsaturday                                      
       from sys.dual;                                         
   v_countworkday:=to_number(v_firstsaturday)-1;                          
   loop                                               
    v_outdate:=to_date(concat(v_nowdate,v_firstsaturday+7),'yyyymmdd');              
    if v_outdate yyymm'),'01'),'yyyymmdd') then                                   
                                                    
     v_countworkday:=v_countworkday+5;                              
     else                                             
     v_countworkday:=v_countworkday+5-to_number(v_outdate-to_date(concat(to_char(add_months(sysdate
  ,1),'yyyymm'),'01'),'yyyymmdd'));                                 
                                                    
    end if;                                            
   exit when v_outdate=to_date(concat(to_char(add_months(sysdate,1),'yyyymm'),'01'),'yyyymmdd');  
  
  TEXT
  
  CREATE OR REPLACE FUNCTION Get_WorkingDays(
   ny IN VARCHAR2
  ) RETURN INTEGER IS

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com)

  
  /*------------------------------------------------------------------------------------------
  函数名称:Get_WorkingDays
  中文名称:求某一年月中共有多少工作日
  作者姓名: XINGPING
  编写时间: 2004-05-22
  输入参数:NY:所求包含工作日数的年月,格式为yyyymm,如200405
  返 回 值:整型值,包含的工作日数目。
  算法描述:
    1).列举出参数给出的年月中的每一天。这里使用了一个表(ljrq是我的库中的一张表。这个表可以是有权访问的、记录条数至少为31的任意一张表或视图)来构造出某年月的每一天。
    2).用这些日期和一个已知星期几的日期相减(2001-12-30是星期天),所得的差再对7求模。如果所求年月在2001-12-30以前,那么所得的差既是负数,求模后所得值范围为大于-6,小于0,如-1表示星期六,故先将求模的结果加7,再求7的模.
    3).过滤掉结果集中值为0和6的元素,然后求count,所得即为工作日数目。   
  -------------------------------------------------------------------------------------------------*/

来源:http://www.tulaoshi.com/n/20160129/1493904.html

延伸阅读
标签: Web开发
实现树状结构的两种方法1。递归法 递归是指在函数中显式的调用它自身。 利用递归法实现树状结构的特点是写入数据速度较快,显示速度较慢(在树的分支/层次较多的情况下尤其明显)。适用与写入数据量大,树的结构复杂的情况下。 数据结构(以mysql为例) 代码:------------------------------------------------------------------------------...
Excel怎么求和 求和 鼠标选中C1单元格,然后在C1单元格中输入“=A1+B1”,输入完毕后安下键盘上回车键即可求出结果。 批量求和 1、第一步骤使用单个求和将“A1和B1相加,结果在C1中”,也就是上面的单个求和步骤; 2、将鼠标移动到c1单元格的右下角,但鼠标变成黑色十字架形状后单击鼠标左键按住不放,拖动到C12单元格中后放开鼠标。 ...
标签: 皮肤护理
问答 图钉提问: 问题描述:我女朋友5天前在左臂接种了麻风疫苗,昨天下午在左臂接种了乙肝疫苗加强针,之前的乙肝五项检查她显示抗体弱.昨天晚上睡觉的时候她开始有点低烧,37度左右,今天早上她还是有点低烧,但是温度比昨天低了.这样的症状有什么负面效应么?谢谢解答啊,越详细越好啊,谢谢谢谢! 图老师解答: 你好,你朋友出现的发热是正常的,有...
标签: PS PS教程
高难度抠图是别人这样叫的,并要求发个教程,等到看了这个教程后你就不会认为这样的图是高难度的抠图了,呵,在这里我用了两种方法,希望对你有所帮助 screen.width-500)this.style.width=screen.width-500;" border=0> 第一种抽出方法: 1、复制一背景层,下面再加一颜色图层以便观察,如图 screen.width-500)this.style.width=screen.wid...
标签: 秋季养生 健康
.hzh {display: none; } 秋季是从立秋至立冬3个月,秋季的特点是由热转寒,阳消阴长。所以秋季养生保健必须遵循“养收”的原则,其中饮食保健当以润燥益气为中心,以健脾补肝清肺为主要内容,以清润甘酸为大法,寒凉调配为要。下面介绍秋季饮食养生的几种方法。 水果养生 秋季气候干燥,常常使人感到鼻、咽干燥不适。这时如果...

经验教程

943

收藏

50
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部