This are the logs of employee # 16计算/确定小时夜班与多个日志
And here is my expected output
我已经试过此查询:
SELECT a.`id` AS employ_id,
ADDTIME(MIN(a.adjustedDateTime), '12:00:00') AS check_in_time,
ADDTIME(MAX(a.adjustedDateTime), '12:00:00') AS check_out_time,
TIMEDIFF(
MAX(a.adjustedDateTime),
MIN(a.adjustedDateTime) ) AS working_time,
COUNT(0) AS report_times,
DATE_FORMAT(a.adjustedDateTime, '%Y-%m-%d') AS report_date
FROM (SELECT
`EnNo` AS id,
SUBTIME(
CONCAT(DATE(DateTime), ' ', TIME(DateTime)), '12:00:00') AS adjustedDateTime
FROM
bio) a
GROUP BY a.`id`,
DATE_FORMAT(a.adjustedDateTime, '%Y-%m-%d')
ORDER BY a.`id`, DATE('DateTime');
[这里是输出,不计算dayshift小时:
--- Empid - | ---------- TimeIn ---------- | ---------- TimeOut ------- | --------- - 小时----- |
00000006 2017-05-15 18:14:13 2017-05-16 06:30:05 12:15:52.000000 00000006 2017-05-16 18:10:18 2017-05-17 05:30:50 11:20:32.000000 00000006 2017-05-18 08:30:05 2017-05-18 08:30:05 00:00:00.000000 00000006 2017-05-18 15:30:05 2017-05-18 15:30:05 00:00:00.000000
谁能帮助我?或任何有关它的算法或任何建议。谢谢。很抱歉,如果我不能发布的图像,没有足够的信誉:(
从业务角度来看,“夜班时间”会是什么?什么时候开始,什么时候结束?你可以给你的工作日志表定义表格吗? – Jan
我的夜班定义是晚上10点。我只是需要获得帮助,以获得工作时间的空档和夜班。就像上面给出的一样。我需要帮助:3 – Nicoooooo
您对上班时间的计算似乎也是如此。看起来第3行和第4行从08:30到15:30将是一天移位? – Jan