Как-то так, надеюсь у вас хотя бы 2005:
select id, time from (
select id, time, row_number() over(partition by left(convert(varchar(20), time, 112), 14) order by time) as [rn]
from dbo.table1
) sq
where rn = 1;
Если по-русски: округляете время до минуты и из каждой такой группы берете первое значение в порядке возрастания исходного времени.