当前位置:  数据库>oracle

符合中国人习惯的Oracle取周的日期函数

    来源: 互联网  发布时间:2017-05-29

    本文导语: 最近在帮HR抓加班记录的统计数据。HR希望能by周统计加班时数。但Oracle的日期函数计算周时是周日算第一天,周六算最后一天。而中国人的习惯是周一算第一天,周日算最后一天。而且,Oracle的函数返回的是第几周,是个数字,...

最近在帮HR抓加班记录的统计数据。HR希望能by周统计加班时数。但Oracle的日期函数计算周时是周日算第一天,周六算最后一天。而中国人的习惯是周一算第一天,周日算最后一天。而且,Oracle的函数返回的是第几周,是个数字,HR还要再根据数据推算是那个日期段。自己编写了一个符合我们要求的小函数,返回值也科学很多,呵呵!
 
FUNCTION get_wk (p_date IN DATE)
 
      RETURN VARCHAR2
 
  IS
 
      v_wk  VARCHAR2 (30);
 
      v_n    NUMBER;
 
  BEGIN
 
      SELECT TO_NUMBER (TO_CHAR (p_date, 'D'))
 
        INTO v_n
 
        FROM DUAL;
 
 
 
      IF v_n = 1
 
      THEN
 
        v_wk :=
 
              TO_CHAR (p_date - 6, 'YYYY/MM/DD')
 
            || '-'
 
            || TO_CHAR (p_date, 'YYYY/MM/DD');
 
      ELSE
 
        v_wk :=
 
              TO_CHAR (p_date + (7 - (5 + v_n)), 'YYYY/MM/DD')
 
            || '-'
 
            || TO_CHAR (p_date + (7 - (5 + v_n)) + 6, 'YYYY/MM/DD');
 
      END IF;
 
 
 
      RETURN v_wk;
 
  END;

相关阅读:

Oracle函数之Replace()

Oracle函数大全

Oracle函数之case和decode的用法区别及性能比较

Oracle函数和存储过程简单实例

Oracle函数 通过秒数或分钟数获取时间段


    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 我要实现当进程打开文件时,根据文件名判断是否符合要求,符合后处理文件,再把文件返回给进程,怎么实现啊
  • (散分了)大虾们看看:读xml的bean中,如果xml不符合dtd
  • 如何写参数,使grep在一个文件里找到了第一个符合的行后,即退出
  • DIV+CSS不一定符合标准
  • 如何得到一个resultSet的长度,即一条select语句返回了多少符合条件记录
  • unix有一个工具,可以对自己编写的C程序进行符合各种编码风格的输出转换,谁知道?
  • 如何判断文件描述符合法?(Linux+C)
  • 美女找师傅,符合的进!!!
  • 解决URL中含有-与号-不符合标准问题
  • DevExpress实现TreeList向上递归获取符合条件的父节点
  • java如何将符合dicom标准的图片转换成.jpg或者直接显示在browser上
  • unix下怎样查找符合条件的文件,并存取文件的时间?
  • awk怎样取到符合模式的字符串的各个部分?
  • 用statfs计算出来得剩余空间与实际空间不符合阿
  • 求一脚本!关于搜索符合条件的文件,并且将文件打包备份.内详
  • 关于文件大小与文件系统不符合的问题
  • ResultSet rs = stmt.executeQuery(sql),如果该sql的结果是没有符合的记录,那么rs此时是什么东东?是null吗?如果不是,如何判断是空resultset?
  • 我用getKeyTyped()得到当前按下的按键,想让不符合要求的按键忽略掉,像没按一样,不知怎么做
  • 真正的linux高手,请看过来,看你符合高手标准不?
  • MSSQL 检查所使用的语句是否符合标准


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,