如何获得总时数?

时间:2013-09-06 09:40:10

标签: mysql

Name|| day||ActivityDate ||TimeIn  || TimeOut ||
Ade || 20 || 2013-08-20 || 10:06:09 || 18:21:03 ||
Ade || 21 ||2013-08-27  || 11:00:34 || 18:06:56 ||
Ade || 22 || 2013-08-28 || 09:56:29 || 17:59:56 ||

这是我的疑问:

select 
tot=sum(DATEDIFF(hh ,TimeIn ,TimeOut )) as TotalHourAndMinute
from report

错误:

  

1582 - 调用本机函数时参数计数不正确   'DATEDIFF'

这是我在数据表中的表格.. 我不知道如何像TimeOut-TimeIn那样获得总时数..

fyi,我在这张表中有很多数据......不仅仅是这个...... ..

我希望你们明白......

Name|| day||ActivityDate ||TimeIn  || TimeOut   || TotalHourAndMinute
Ade || 20 || 2013-08-20 || 10:00:00 || 18:30:00 ||   8.5
Ade || 21 ||2013-08-27  || 11:00:34 || 18:06:56 ||   7.something
Ade || 22 || 2013-08-28 || 09:56:29 || 17:59:56 ||   7.something

我希望它会像这样......

更新

2 个答案:

答案 0 :(得分:0)

使用:

SELECT HOUR(TIMEDIFF(TimeOut,TimeIn)) AS hour from report;

有关详细信息,请访问this网站。

答案 1 :(得分:0)

如果您汇总时间值,您将在几秒钟内得到结果,将其转换回您拨打SEC_TO_TIME的时间。这给你:

SELECT
    SEC_TO_TIME(SUM(TIMEDIFF(TimeOut, TimeIn))) AS TotalHourAndMinute
FROM
    report