Я бы, вероятно, сделал что-то вроде ...
select >>select list<<
from table
where datediff(minute, getdate(), [Arrival]) < 60
или, используя ваш час
select >>select list<<
from table
where datediff(hour, getdate(), [Arrival]) < 1
edit: Кроме того, если производительность критична, я бы также предложил проверитьвход, чтобы не допустить древние даты.Если у вас есть повторяющиеся расписания, которые не зависят от года или даже месяца (по сути, вы просто ищете часы и минуты), тогда было бы целесообразно использовать DatePart.
select ____
from [table]
where (((datepart(hour, getdate()) = datepart(hour, [Arrival])) AND (datepart(minute, [Arrival]) - datepart(minute, getdate()) < 60)