在度假时填写员工的时间段(修改Access DB)

时间:2015-01-13 10:42:23

标签: mysql

员工休假计划。当员工休假时,我必须确保他们的工作得到满足(志愿者或起草)。 平日员工每天轮班工作三班八小时,而周末员工则轮班两班十二小时。虽然公开的位置是张贴的,可能是自愿的,如果没有填补,我必须从其他班次起草员工来填补这些开放的工作位置。  由于周末员工在加班费之前必须工作16个小时的额外时间,我必须先从该组起草。  如果我起草一个工作日的员工(工作日时段),我只能让他们工作四个小时。因此,我必须起草两个人来完成一个完整的八小时轮班(周末开放时间为两个六小时)。  被起草的人必须至少休息十小时或来自前一班次(我不能要求第一班员工在八小时后进入以填补第三班的前半部分)。 年初至今加班最少的人首先列在选秀名单上。 我必须能够从小组起草(该人必须来自有资格完成他们正在起草的工作的小组)。

1 个答案:

答案 0 :(得分:0)

如果不了解您的数据库结构,我首先会创建一个view来存储您定义的业务逻辑的结果。例如,它将返回以下内容:

  • EMPLOYEE_ID
  • shift_type(周末/工作日)
  • hrs_since_last_shift
  • overtime_this_year(按此字段排序,升序)

构建完成后,您可以查询view以执行一些过滤,并确定应该为轮班选择谁。

SELECT *
FROM employeeView
WHERE hrs_since_last_shift > 8
AND shift_type = 'weekend'
... -- etc