У меня есть данные в таблице, как показано ниже
ID status timestamp
ABC login 1/1/2020 12:00
ABC lock 1/1/2020 13:19
ABC unlock 1/1/2020 13:52
ABC Disconnect 1/1/2020 15:52
ABC Reconnect 1/1/2020 15:55
ABC lock 1/1/2020 16:25
ABC unlock 1/1/2020 16:30
ABC logoff 1/1/2020 17:00
ABC login 2/1/2020 12:00
ABC lock 2/1/2020 13:19
ABC unlock 2/1/2020 13:52
ABC lock 2/1/2020 16:22
ABC logoff 2/1/2020 17:00
Мне нужно найти эффективное рабочее время сотрудника на конкретную дату, на которую он действительно работал. Означает сумму общего времени за вычетом времени, когда статус был заблокирован, отключен.
Пример: для сотрудника AB C на 01-ЯНВ-2020 его система была идеальной между 13:19 - 13:52 (33 минут) и снова с 15:52 - 15:55 (3 минуты). Следовательно, из общего рабочего часа, т.е. 5 часов (время между входом в систему и временем выхода из системы), его эффективное время составит 5 часов - 36 минут = 4 часа 24 минуты. Аналогично для 01-ФЕВ-2020.