💻 SQL计算上班总时长 | 每日首次打卡为准
忙碌的工作日里,如何精准统计每个人的上班时长?今天来分享一个实用的小技巧!🌟
假设你有一份打卡记录表,包含员工ID、打卡日期、打卡时间和打卡类型(上班/下班)。我们可以通过SQL语句,以每天的首次上下班打卡时间为基准,轻松计算出每位员工的每日工作时长。👇
首先,我们需要筛选出每个人的每日首次打卡记录:
```sql
SELECT employee_id, DATE(record_time) AS date,
MIN(CASE WHEN type = '上班' THEN record_time END) AS start_time,
MAX(CASE WHEN type = '下班' THEN record_time END) AS end_time
FROM attendance_records
GROUP BY employee_id, DATE(record_time);
```
接着,利用`TIMESTAMPDIFF`函数计算时长:
```sql
SELECT DATEDIFF(end_time, start_time) AS total_hours
FROM (
-- 上述查询结果
) AS daily_records;
```
通过这两步操作,你就能获得每位员工每天的精准上班时长啦!⏰
💡 小贴士:记得检查数据完整性,避免因异常打卡导致误差哦!💪
🌟 职场效率提升神器,快来试试吧!
免责声明:本答案或内容为用户上传,不代表本网观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 如遇侵权请及时联系本站删除。