DateDiff to output hours and minutes

后端 未结 12 2015
半阙折子戏
半阙折子戏 2020-12-09 09:47

my code gives TOTAL HOURS in hours, but i am trying to output something like

TotalHours 
  8:36

where 8 represents hour part and 36 repres

12条回答
  •  不知归路
    2020-12-09 10:33

    Small change like this can be done

      SELECT  EmplID
            , EmplName
            , InTime
            , [TimeOut]
            , [DateVisited]
            , CASE WHEN minpart=0 
            THEN CAST(hourpart as nvarchar(200))+':00' 
            ELSE CAST((hourpart-1) as nvarchar(200))+':'+ CAST(minpart as nvarchar(200))END as 'total time'
            FROM 
            (
            SELECT   EmplID, EmplName, InTime, [TimeOut], [DateVisited],
            DATEDIFF(Hour,InTime, [TimeOut]) as hourpart, 
            DATEDIFF(minute,InTime, [TimeOut])%60 as minpart  
            from times) source
    

提交回复
热议问题