Hi Zimiso,
Are you looking for a sample as below?
DECLARE @T TABLE(EventID INT, [entry] DATETIME, [exit] DATETIME)
INSERT INTO @T VALUES
(1,'20070101 06:34:12','20070101 12:45:34'),
(2,'20070102 13:23:08','20070102 15:05:37'),
(3,'20070103 16:34:12','20070103 16:55:18'),
(4,'20070104 17:02:00','20070104 18:13:21'),
(5,'20070105 18:16:55','20070105 19:28:48'),
(6,'20070106 19:59:11','20070107 21:23:11'),
(7,'20070107 22:12:23','20070107 22:40:25')
;WITH Cte AS
(
SELECT *, ROW_NUMBER() OVER(ORDER BY EventID) rn FROM @T
),
Cte2 AS
(
SELECT t1.*,DATEDIFF(SECOND,T1.[exit],T2.[entry]) Seconds
FROM Cte T1 LEFT JOIN Cte T2
ON T1.RN =T2.EventID-1
)
SELECT EventID,[entry],[exit],
LTRIM(STR(Seconds/86400))+' day '+
RIGHT('0'+LTRIM(STR(Seconds%86400)/3600),2)+':'+
RIGHT('0'+LTRIM(STR(Seconds%3600)/60),2)+':'+
RIGHT('0'+LTRIM(STR(Seconds%60)),2) INTERVAL
FROM Cte2
If you have any question, feel free to let me know.