--FIRST REMOVE ROWS THAT FALL WITHIN A MINUTE OF EACH OTHER (d2 is datetime)
while exists(select 1 from #temp t inner join #temp t2 on t.[member] = t2.[member] and datediff(minute,t.smalldatestamp,t2.smalldatestamp) = 1 and t.d2 != t2.d2)
begin
delete #temp from #temp inner join
(select top 1 t1.[member], t1.d2 from #temp t1 inner join #temp t2 on t1.[member] = t2.[member] and datediff(minute,t1.smalldatestamp,t2.smalldatestamp) = 1 and t1.d2 != t2.d2) t3
on #temp.[member] = t3.[member] and #temp.d2 = t3.d2
end
--THEN REMOVE ROWS THAT THAT FALL IN THE SAME MINUTE
while exists(select 1 from #temp t inner join #temp t2 on t.[member] = t2.[member] and t.smalldatestamp = t2.smalldatestamp and t.d2 != t2.d2)
begin
delete #temp from #temp inner join
(select top 1 t1.[member], t1.d2 from #temp t1 inner join #temp t2 on t1.[member] = t2.[member] and t1.smalldatestamp = t2.smalldatestamp and t1.d2 != t2.d2) t3
on #temp.[member] = t3.[member] and #temp.d2 = t3.d2
end