SELECT DATEADD(HOUR,number,'2023-09-19 07:30:00.000') a from master..spt_values where type='p' and number<=datediff(HOUR,'2023-09-19 07:30:00.000','2023-09-19 19:30:00.000')
select * from (select *,LEAD(a,1,null) over(order by a) s from (SELECT DATEADD(HOUR,number,'2023-09-19 07:30:00.000') a from master..spt_values where type='p' and number<=datediff(HOUR,'2023-09-19 07:30:00.000','2023-09-19 19:30:00.000')) as a ) as a where s is not null