/**************************************************************************
  Funtion to add only business days to a date
**************************************************************************/
DROP FUNCTION add_bus_day;
/

CREATE FUNCTION add_bus_day(in_date DATE, num_days INT) RETURNS date
BEGIN  
-- ------------------------------------
-- Param: in_date DATE, num_days INT
-- ------------------------------------
    DECLARE v_future_day DATE;
    DECLARE v_delta      INT;

    SET v_delta = FLOOR((DAYOFWEEK(in_date) + (num_days*7/5)) / 7) * 2; 

    SELECT TIMESTAMPADD(DAY, num_days + v_delta, in_date)  
           INTO v_future_day;
    RETURN v_future_day;
END
/

SELECT add_bus_day(now(),8);