如何从两个时间段里统计出员工平时工作时间,周末加班时间,法定假日加班时间?员工上班时间是8点到12点,1点半到5点半,晚上7点到9点,一周上班5天半,然后员工从下午14点工作到了第二天上午10点10分下班,也就是员工打了2次卡,一次时间是下午14点,一次时间是第二天上午10点10分,
下班时间不算,
SQL SERVER 2000,
怎么计算出这个员工平时工作了多少小时?
周末工作了多少小时(员工也可能周末加班)?
国家法定假日工作了多少小时(员工也可能法定假日加班)?

解决方案 »

  1.   

    victor_yang  说的是对的, 接着victor_yang的,说说我们处理跨日加班的处理:
    1、跨日加班要申请,事前申请事后申请都可以,不然谁知道你 10:10分是打的什么卡,10多年有我们用电脑打卡,保安选择打什么卡(上班、下班、加班上班、加班下班)哪个方法倒是非常好,但现在都是指纹、人脸打卡了,系统会设置某个时间段打什么卡;
    2、申请好了,系统就知道你 10:10分打的是加班下班卡,而且早上没打卡,也不会计漏打卡;
    3、加班时间计算,表中建一个字段,用来将时间化成分钟, 如 8点上班,对应 480分钟,如果跨日则加上 24*60 = 1440分钟,这样下班分钟减去上班分钟就是上班时长,当然要考虑公司的上班时间,如 8点前打卡,就按 480分钟来减,8点10分打卡,就按490分钟减。