We can calculate elapsed time from DATETIME() function of SQL Server by extracting number of hours, minutes and seconds. Below query can be used to calculate the elapsed time between two given dates:
DECLARE @dt_start_date DATETIME
DECLARE @dt_end_date DATETIME
SET @dt_start_date = '2014-01-01 11:30:45'
SET @dt_end_date = '2014-01-10 01:22:30'
SELECT CAST((DATEDIFF(HOUR , @dt_start_date, @dt_end_date) / 24) AS VARCHAR) + ':'
+ CAST((DATEDIFF(HOUR , @dt_start_date, @dt_end_date) % 24) AS VARCHAR) + ':'
+ CAST((DATEDIFF(MINUTE, @dt_start_date, @dt_end_date) % 60) AS VARCHAR) + ':'
+ CAST((DATEDIFF(SECOND, @dt_start_date, @dt_end_date) % 60) AS VARCHAR) AS [Elapsed Time (DD:HH:MM:SS)],
CAST((DATEDIFF(HOUR , @dt_start_date, @dt_end_date) / 24) AS VARCHAR) + ' Days '
+ CAST((DATEDIFF(HOUR , @dt_start_date, @dt_end_date) % 24) AS VARCHAR) + ' Hours '
+ CAST((DATEDIFF(MINUTE, @dt_start_date, @dt_end_date) % 60) AS VARCHAR) + ' Minutes '
+ CAST((DATEDIFF(SECOND, @dt_start_date, @dt_end_date) % 60) AS VARCHAR) + ' Seconds ' AS [Elapsed Time (String Format)]
Output:
Elapsed Time (DD:HH:MM:SS) Elapsed Time (String Format)
8:14:52:45 8 Days 14 Hours 52 Minutes 45 Seconds
DECLARE @dt_start_date DATETIME
DECLARE @dt_end_date DATETIME
SET @dt_start_date = '2014-01-01 11:30:45'
SET @dt_end_date = '2014-01-10 01:22:30'
SELECT CAST((DATEDIFF(HOUR , @dt_start_date, @dt_end_date) / 24) AS VARCHAR) + ':'
+ CAST((DATEDIFF(HOUR , @dt_start_date, @dt_end_date) % 24) AS VARCHAR) + ':'
+ CAST((DATEDIFF(MINUTE, @dt_start_date, @dt_end_date) % 60) AS VARCHAR) + ':'
+ CAST((DATEDIFF(SECOND, @dt_start_date, @dt_end_date) % 60) AS VARCHAR) AS [Elapsed Time (DD:HH:MM:SS)],
CAST((DATEDIFF(HOUR , @dt_start_date, @dt_end_date) / 24) AS VARCHAR) + ' Days '
+ CAST((DATEDIFF(HOUR , @dt_start_date, @dt_end_date) % 24) AS VARCHAR) + ' Hours '
+ CAST((DATEDIFF(MINUTE, @dt_start_date, @dt_end_date) % 60) AS VARCHAR) + ' Minutes '
+ CAST((DATEDIFF(SECOND, @dt_start_date, @dt_end_date) % 60) AS VARCHAR) + ' Seconds ' AS [Elapsed Time (String Format)]
Output:
Elapsed Time (DD:HH:MM:SS) Elapsed Time (String Format)
8:14:52:45 8 Days 14 Hours 52 Minutes 45 Seconds
No comments:
Post a Comment