计算时钟输入和时钟输出时间戳之间的小时和分钟

时间:2013-10-03 11:33:32

标签: mysql sql time

我正在开发一个时间表时钟系统。当用户从建筑物中走出时,他们会记录他们进入建筑物和场外的日期和时间。

技巧是我需要以小时和分钟计算当前的总IN时间。

所以,你有这种情况:

  

用户时钟IN在08:00用户时钟OUT在12:00
  = 4小时

用户时钟IN在12:30用户时钟OU在13:30
  = 1小时

     

用户时钟IN在16:00用户时钟OUT在18:30
  = 2小时30分钟。

现在,我知道MySQL有一个HOUR(TIMEDIFF(t2,t1)) AS hour, MINUTE(TIMEDIFF(t2,t1)) AS minute功能,但不知道如何训练每个IN-OUT组合之间的时间间隔并忽略OUt-IN,这样我就可以获得一个TOTAL,仅用于在网站上花费的时间或在大楼里。

换句话说,不是来自第一个IN和最后一个OUT。

提前致谢。

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

更新:请针对您所需的方案尝试以下链接:

<强> SQL FIDDLE

- 以下代码用于IN&amp; OUT在同一行 -

您可以使用以下查询以小时计算数据:

select EMP ,sum(datediff(hour,cast([in] as datetime)
       ,cast([out] as datetime)) ) 
from table1
GROUP BY EMP

<强> SQL FIDDLE