取得指定日期所在周的第一日和最后一日

自己第一次写的ORACLE函数,很简单,但希望对大家有帮助。

create or replace function FIRST_LAST_WEEK_DAY(IN_DAY IN DATE,
                                               I      IN INTEGER)
  return VARCHAR2 is
  Result VARCHAR2(8);
  J      INTEGER;
begin
  /*
  获取一周中的第一日 first_last_week_day(sysdate,0)
  获取一周中的最后一日 first_last_week_day(sysdate,1)
  */
  SELECT TO_CHAR(IN_DAY, 'D') INTO J FROM DUAL;
  IF I = 0 THEN
    RESULT := TO_CHAR(IN_DAY - J + 1, 'YYYYMMDD');
  ELSE
    RESULT := TO_CHAR(IN_DAY + (7 - J), 'YYYYMMDD');
  END IF;
  return(Result);
end FIRST_LAST_WEEK_DAY;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值