set @p=(select date_add(curdate() - day(curdate()) + 1, interval 0 month)); /* interval 后面的数字调整的话,会计算出其他月份的第一天和最后天*/
set @q=(select last_day(DATE_SUB(@p,INTERVAL 0 MONTH)));
select @p,@q