How to display hours and minutes between two dates

I have a table consisting of datetime columns "StartTime" and "CompleteTime". Initially, the completeTime column will be NULL until the process completes. And now my requirement is to display hours and minutes as shown below

Exit: Example: 2:01 h (This means that “2” represents hours and “01” represents minutes)

I tried as below:

Declare @StartDate dateTime = '2016-03-31 04:59:11.253'
Declare @EndDate dateTime = GETUTCDATE()

SELECT REPLACE(CONVERT(VARCHAR,CAST(DATEDIFF(second, @StartDate, 
ISNULL(GETUTCDATE(),@EndDate)) / 36000.0 AS DECIMAL(9,2))) + ' hr','.',':')

Output:

0:05 hr

Required Conclusion:

0:32 hr

Note: Hi, giving a negative mark, check my request once. I already referred to some links related to this, but it will not work.

+4
3

DECLARE @STARTDATE DATETIME = '2016-03-31 04:59:11.253'
DECLARE @ENDDATE DATETIME = GETUTCDATE()

SELECT CONVERT(VARCHAR(10),DATEDIFF(MINUTE, @STARTDATE, @ENDDATE)/60)+':'+CONVERT(VARCHAR(10),DATEDIFF(MINUTE, @STARTDATE, @ENDDATE)%60)+' hr' AS DIFF

:

Diff
0:52 hr

24

72:56 hr
+1

( MS SQL) -

Declare @StartDate dateTime = '2016-03-31 04:59:11.253'
Declare @EndDate dateTime = GETUTCDATE()

SELECT CONVERT(varchar(5), 
   DATEADD(minute, DATEDIFF(minute, @StartDate, @EndDate), 0), 114) + ' hr'

- 00:47 hr

+1
Declare @StartDate dateTime = '2016-03-31 04:59:11.253'

SELECT CONVERT(varchar(10),DATEADD(minute, DATEDIFF(minute, @StartDate,GETUTCDATE()), 0), 114) + ' Hr'

: '0:43 Hr'

ISNULL(GETUTCDATE(),@EndDate) , GETUTCDATE() NULL, 36000 3600, , (60 /). ..: 90 1:30 :9

Edit: Mixup , DATEADD() .

0

All Articles