Select [name],[time],[value2] From(
Select [name],[time],sum([value]) OVER(PARTITION by [name],rnum) as value2 From (
Select [name],[time],[value],((row_number() OVER(PARTITION by [name] Order by [time] DESC,[value]))+1)/2 as rnum From (
select [name],[time],datediff(dd,[time],getdate()) as [value] From test
Union all
select [name],[time],-datediff(dd,[time],getdate()) as [value] From(
select [name],[time],row_number() OVER(PARTITION by [name] Order by [time] DESC) as rnum From test
) as tb1 Where rnum>1
) tb2
) tb3
) tb4 Where value2=-1 Order by [time]