【发布时间】:2020-08-21 21:36:08
【问题描述】:
我在下面的表格中有一个数据
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
我需要找到员工在特定日期实际工作的有效工作时间。表示总时间减去状态为锁定、断开连接的时间的总和。
示例:对于 2020 年 1 月 1 日的员工 ABC,他的系统在 13:19 - 13:52(33 分钟)和 15:52 - 15:55(3 分钟)之间是理想的。 因此,在总工作时间中,即...... 5 小时(登录和注销时间之间的时间),他的有效时间将是 5 小时 - 36 分钟 = 4 小时 24 分钟。 2020 年 2 月 1 日也是如此。
【问题讨论】:
标签: sql date group-by hive hiveql