例如:

上班时间为 8:30 到17:30,加班则到21:00;午休时间为1小时,(12:00-13:00);

晚间休息时间为半小时 (17:30-18:00),计算一批考勤数据的上班时间。

思路:

选择上班时间或者下班时中的一个作为大类进行区分,进行时间段划分;

选择另外一项作为小类,在大类的各个情况中按照小类来划分。这样会包含所有的情况,并且避免重复或者确实某一种情况。

解决方案:

首先将考勤数据按照上下班一一对应来进行数据整理。

其次将考勤时间进行归类。将8:30之前的上班时间 直接算为8:30,下班时间21:00之后算为21:00.

将两个时间做差,计算出时间差。将新整理的数据做成新的表或视图。

然后,在function进行继续处理,判断每一笔数据的上班时间和下班时间处于哪个时间段。

一、 上班时间在12:00 之前的情况

①下班时间在12:00之前,视图中的时间差不进行处理

②下班时间在12:00之后,并且在13:00之前的时间差要减去(下班时-12:00)

③下班时间在13:00之后,并且在17:30之前的时间差要减去1h

④下班时间在17:30之后,并且在18:00之钱的时间差要减去(1+(下班时间-17:30))

⑤下班时间在18:00之后,时间差减去 1.5h

二、上班时间在12:00之后,并且在13:00之前

①下班时间在13:00之前,时间差计算为0

②下班时间在13:00之后,并且在17:30之前时间差要减去(12:00-上班时间)

③ 下班时间在17:30之后,并且在18:00之前时间差要减去((12:00-上班时间)+(下班时间+17:30))

④下班时间在18:00之后,时间差要减去((12:00-上班时间)+0.5h)

三、上班时间在13:00之后,并且在17:30之前

①下班时间在17:30之前,时间差不进行处理

②下班时间在17:30之前,并且在18:00之前时间差要减去(下班时间-17:30)

③下班时间在18:00之后,时间差要减去0.5h

四、上班时间在17:30之后,并且在18:00之前

①下班时间在18:00之前,时间差不进行处理

②下班时间在18:00之后,时间差减去(18:00-上班时间)

五、上班时间在18:00 之后

时间差不进行处理

转载于:https://www.cnblogs.com/LittleDuan/p/10719839.html

oralce的function处理考勤时间节点以及计算工作时间相关推荐

  1. linux cpu占用100原因查询,如何根据查询异常时间节点和连接进而确定CPU使用率100%的原因...

    本文在介绍如何根据查询异常时间节点和连接进而确定CPU使用率100%的原因的基础上,重点探讨了其具体步骤,本文内容紧凑,希望大家可以有所收获. 排查 Linux 实例异常 CPU 使用率 100% 使 ...

  2. 2020全国大学生数学建模竞赛【论文格式、时间节点及作品提交要求、竞赛题目下载、评分要点】【微信公众号:校苑数模】

    百度网盘下载:竞赛题目下载(官网下载,未经改动!)[提取码:zjxs] 2020年06月02日:2020全国大学生数学建模竞赛 2020年08月25日:全国大学生数学建模竞赛论文格式规范(2020年修 ...

  3. oracle处理考勤时间,拆分考勤时间段的sql语句

    最近一直在用mysql数据库做云项目,有段时间没有接触oracle了,昨天有朋友叫我帮忙用oracle处理一个考勤记录的需求,我在考虑如何尽量精简实现上面花了一些时间.于是把这个实现做个总结. 需求如 ...

  4. python绘制时间节点事件图

    文章目录 前言 例子 封装 更新-插图 前言 偶然在官网发现了一个时间节点事件图便学习了一下,横轴为时间列表,纵轴为相应时间的文本内容,可以展示各个时间节点的一些事件.虽然和前端画的没法比,但封装好用 ...

  5. java获取每周的周一到周日时间节点

    根据当前时间获取当前周的周一至周日的时间节点,看代码 public static void main(String[] args) {SimpleDateFormat sdf = new Simple ...

  6. python_考勤时间

    一道关于考勤时间的题目. 用Python求解如下: from datetime import datetime n = input() flag=0FMT = '%H:%M:%S' sss=datet ...

  7. ICCV2021已开放注册,附投稿时间节点、官方论文模版!

    CVPR2021第一轮结果已经出来了,各种奇葩评审引起众怒,尽管如此,气过之后还是得乖乖写rebuttal,或者转投其他会议,ICCV2021就是个不错的选择. ICCV全称是 IEEE Intern ...

  8. [考研信息] 2020年考研重要时间节点

    2019年考研的热潮正在进行,2020年考研也随之拉开序幕.俗话说知己知彼,才能百战不殆,考研备考时间长达一年乃至更久,在此期间,除了埋头复习,考研党也需要"两耳多听窗外事".作为 ...

  9. 【板栗糖GIS】——如何下载哔哩哔哩的视频CC字幕为不带时间节点的纯文字

    [板栗糖GIS]--如何下载哔哩哔哩的视频CC字幕为不带时间节点的纯文字 目录 1. 打开edge浏览器或谷歌浏览器 2. 安装油猴插件 3. 安装字幕插件 4. 打开哔哩哔哩视频播放页面,点击字幕 ...

最新文章

  1. pytorch图像和张量的相互转换_[Pytorch]Pytorch的tensor变量类型转换
  2. Py之pywin32:Python库之pywin32的简介、安装、使用方法之详细攻略
  3. nginx配置长连接
  4. 其实,最好的年龄才刚刚开始
  5. 04-windows上安装Kibana
  6. finallshell使用_FinalShell使用---Xshell的良心国产软件
  7. php 抽象类 接口 区别,php中接口、抽象类以及接口和抽象类区别详解
  8. Cadence工具系列介绍
  9. NN求解NS方程进一步探讨
  10. css怎么设置鼠标手势?
  11. 【猥琐流】制作一个隐藏在黑页下的大马并且添加后门
  12. Arduino的详细介绍(基于Mega2560)(分文)——pinMode,digitalWrite/digitalRead()
  13. 集成百度做敏感词鉴定
  14. 无法向会话状态服务器发出会话状态请求请。确保 ASP.NET State Service (ASP.NET 状态服务)已启动
  15. 面试官:“你为什么离开上家公司?”怎么回答?
  16. 中兴阅读在期刊杂志数字化、移动化上的探索
  17. 【项目管理/PMP/PMBOK第六版/新考纲】项目资源管理/权力理论/管理方格理论/领导生命周期理论/激励理论/马斯洛需求层次理论/赫兹伯格的双因素理论/X理论和Y理论/弗鲁姆的期望理论
  18. bae java mysql_在百度bae云平台中使用JAVA连接MySQL数据库
  19. 头条自媒体运营秘籍,坚持下去你就可以打败90%的人
  20. 神州战神电脑关闭触摸板

热门文章

  1. VB如何直接显示内存中的二进制图像数据
  2. Erlang之父Joe Armstrong去世
  3. 微信AI正在完成:有码走遍天下,从此花钱刷脸
  4. 哈佛机器人,学会了轻功水上漂
  5. 又是AI+IoT!谷歌试图收购物联网公司Xively
  6. 腾讯AI让二子,柯洁还是输了
  7. vb 6 MDI窗体图片自适应源码
  8. TCP/IP基础总结性学习(2)
  9. 优化案例--改写IN条件为INNER JOIN
  10. WINDOWS是如何在注册表里记录盘符分配的