Интересный mysql запрос



Выбираем первый понедельник 3 месяца назад, т.е. если сейчас август, то берем первый понедельник июня
Выбираем вчерашнюю дату + ищем расхождения в количестве дней этих 2-х дат

1
2
3
4
5
6
                        SELECT
                            (@t1:=CURDATE() - INTERVAL 1 DAY) AS `end`,
                            (@startMonth:=DATE_FORMAT(@t1, '%Y-%m-1') - INTERVAL 2 MONTH),
                            (@day:=WEEKDAY(@startMonth)),
                            (@t2:=@startMonth + INTERVAL (7 - @day) DAY) AS `start`,
                            DATEDIFF(@t1, @t2) AS `diff`

Похожие статьи:

  1. Резервное копирование баз MySQL

Ответить


[ Ctrl + Enter ]