计算check_in,check_out时间限制内的多个休息时间

时间:2018-03-02 12:21:21

标签: sql sql-server

我的数据表看起来像这样

Attd_Date_Time        User_ID   Attd_Status
2018-03-02 09:32:12   1002018   CHECK_IN
2018-03-02 11:07:06   1002018   BREAK_IN
2018-03-02 11:25:07   1002018   BREAK_OUT
2018-03-02 16:01:27   1002018   BREAK_IN
2018-03-02 16:12:23   1002018   BREAK_OUT
2018-03-03 17:42:23   1002019   CHECK_OUT

Check_Duration是MIN(Check_IN)和MAX(Check_OUT)之间的分钟差。

Break_Duration是MIN(Break_IN)和MAX(Break_OUT)之间的微小差异。

我可以计算check_duration。但我面临的问题是如果涉及多个Break_IN,BREAK_OUT。

优先输出为(持续时间为分钟):

User_ID   CHECK_DURATION   BREAK_DURATION
1002018   229              28

1 个答案:

答案 0 :(得分:0)

这可能会对你有所帮助。

 ID      Today_Year
-----    -----------
100       2017
101       2018
102       2018