Incorrect total using SUM of DATEDIFF results When i run a few DateDiff(SECOND, value1, value2) it returns a lists of values

93, 185, 1879  which totals 2157 sum with the calc and with SUM()

However, when i use DateDiff(SECOND, firstValue1, lastValue2) returned 2476

A example of the problem is:

declare @testTable table
(
    DateD float
)
insert into @testTable
select datediff(SECOND, '2015-08-12 22:40:29.847', '2015-08-12 23:11:48.000')
UNION
select datediff(SECOND, '2015-08-12 23:11:48.510', '2015-08-12 23:14:53.000')
UNION
select datediff(SECOND, '2015-08-12 23:20:12.147', '2015-08-12 23:21:45.000')

select sum(DateD)from @testTable

select datediff(SECOND, '2015-08-12 22:40:29.847', '2015-08-12 23:21:45.000')


What is my fault?

Thanks.
Well, quite simply, there are gaps in your time series. 

A naive DATEDIFF(MIN, MAX) ignores the fact that there is roughly a 6-minute gap between your second and third rows.

Think about it this way: If you go to school from Monday-Friday, how many days did you attend in June? Not 30, because some of those days in June were Saturday and Sunday (and maybe holidays and PD days, too).