Thank you Naomi!, I'm working on the calendar table.
>Assuming you have a Calendar table that has hours intervals and days.
>select min(Interval) as NextAvailable from Calendar C
>where not exists (select 1 from Assignments A where A.[DayOfWeek] = C.[Day Of Week]
>and A.[Interval] = C.[Interval])
>were C.[DayOfWeek] = 'Tuesday';
>If it's not broken, fix it until it is.