• This almost works based on a post by The Dixie Flatline here:

    http://www.sqlservercentral.com/Forums/Topic649517-1472-1.aspx

    His table has weekends in it, mine doesn't. I'm not sure where I can put the weekend restriction. My futile attempt to ungracefully add IF DATEPART(weekday, @future_date) = 7 fails because it is not 'holiday-aware'.

    This can be demonstrated by setting the date to '2/15/2013'

    set @start_date = '2/15/2013'

    CREATE TABLE #Holidays (HolidayDate datetime, IsHoliday char(1))

    INSERT INTO #Holidays (HolidayDate,IsHoliday) VALUES('2013-02-18 00:00:00.000', 'Y')

    INSERT INTO #Holidays (HolidayDate,IsHoliday) VALUES('2013-03-29 00:00:00.000', 'Y');

    declare @start_Date datetime

    declare @future_Date datetime

    declare @bizDays int

    set @start_date = '2/1/2013'

    set @bizdays = 1

    select

    top (@bizdays) @future_date = @start_Date + n

    from tally t with(nolock)

    left join #Holidays h with(nolock) on HolidayDate = @start_Date + n

    where HolidayDate is null

    DROP TABLE #Holidays

    select @future_date

    IF DATEPART(weekday, @future_date) = 7 SET @future_date = DATEADD(day,2,@future_date)

    IF DATEPART(weekday, @future_date) = 1 SET @future_date = DATEADD(day,1,@future_date)

    select @future_date