select subdate(curdate(),date_format(curdate(),'%w')-1)//获取当前日期在本周的周一

select subdate(curdate(),date_format(curdate(),'%w')-2)//获取当前日期在本周的周二

select subdate(curdate(),date_format(curdate(),'%w')-7)//获取当前日期在本周的周日

%W     星期名字(Sunday……Saturday)    
%w     一个星期中的天数(0=Sunday   ……6=Saturday   )

SELECT date_format('2017-04-19','%w');

#3(周三)
select subdate('2017-04-19',date_format('2017-04-19','%w')-7);
#2017-04-23
SELECT SUBDATE(NOW( ), 1) AS 'Yesterday', SUBDATE(NOW( ), INTERVAL -1 DAY) AS 'Tomorrow';
04-05 17:46