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

php中文网
发布: 2016-06-07 17:33:56
原创
1457人浏览过

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的用法区别及性能比较

Creatext AI
Creatext AI

专为销售人员提供的 AI 咨询辅助工具

Creatext AI 39
查看详情 Creatext AI

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

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

linux

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号