一、MYSQL查询最近的三个月份的简便方法:
select date_format(curdate(),\'%Y-%m\') from dual union select date_format(DATE_SUB(curdate(), INTERVAL 1 MONTH),\'%Y-%m\') from dual union select date_format(DATE_SUB(curdate(), INTERVAL 2 MONTH),\'%Y-%m\') from dual

二、sql查询两个日期内的所有日期
select * from (select @num:=@num+1,date_format(adddate(\'2018-03-11\', INTERVAL @num DAY),\'%Y-%m-%d\') as date from user_attendance,(select @num:=0) t where adddate(\'2018-03-11\', INTERVAL @num DAY) <= date_format(\'2018-03-15\',\'%Y-%m-%d\') order by date )a
注意有个前提:必须要有一个表,它的数据条数大到足够支撑你要查询的天数