MySQL: Using DATE_SUB to subtract business days instead of all calendar days
You can use DAYOFWEEK to calculate the right number of days to subtract based on that. This also works for date_add. For the DAYOFWEEK index, 1 is equal to Sunday and 2 is equal to to Monday.

case 
when DAYOFWEEK({date}) = 1 then date_sub({date}, Interval 2 Day)
when DAYOFWEEK({date}) = 2 then date_sub({date}, Interval 3 Day)
else date_sub({date}, Interval 1 Day)
end


http://www.w3resource.com/mysql/date-and-time-functions/mysql-dayofweek-function.php