Первое и последнее воскресенье месяца на MySQL

Часто на практике встречается задача вычисления первого и последнего воскресенья месяца. Рассмотрим вариант решения этой задачи на MySQL, SELECT DATE_SUB(`dates`.`date`,INTERVAL DAY(`dates`.`date`)-1 DAY) as firstDay, LAST_DAY(`dates`.`date`) as lastDay, DATE_ADD(DATE_SUB(`dates`.`date`,INTERVAL DAY(`dates`.`date`)-1 DAY),INTERVAL 6-WEEKDAY(DATE_SUB(`dates`.`date`,INTERVAL DAY(`dates`.`date`)-1 DAY)) DAY) as firstSunday, DATE_SUB(LAST_DAY(`dates`.`date`),INTERVAL (WEEKDAY(LAST_DAY(`dates`.`date`))+1)%7 DAY)as lastSunday FROM ( SELECT ‘2021-05-16’ `date` ) `dates` В данном примере определение осуществляется относительно первого и…