select t.employee_id,
sum(datediff(second, local_time, next_local_time)) as diff_seconds
from (select t.*,
lead(local_time) over (partition by employee_id order by local_time) as next_local_time
from t
) t
where action = 'IN'
group by t.employee_id;
注:假设 IN s和 OUT s是交错的,因此一行中没有具有相同操作的行。 这也给出了以秒为单位的结果——可以转换成十进制小时或任何其他您想要的特定格式。
2条答案
按热度按时间camsedfj1#
你可以计算下一个
out
对于每个in
区别对待:注:假设
IN
s和OUT
s是交错的,因此一行中没有具有相同操作的行。这也给出了以秒为单位的结果——可以转换成十进制小时或任何其他您想要的特定格式。
6rqinv9w2#
在powerbi/powerquery中,假设您的表与post的结构相同,您可以使用以下脚本创建一个新表。在此脚本中
yourSource
是指你的table。在新表中,每条记录都是一进一出。有一个
Time Difference
列,您可以在计算中使用。