[MySQL] 현재 날짜의 첫날과 다음달의 첫날 구하기
# 현재시간, 현재달 첫날, 다음달 첫날, 다음달(+10) 첫날
SELECT NOW(),
MAKEDATE(2024, 2), -- 2024년 1월 2 일
LAST_DAY(NOW()), -- 현재 마지막 일
LAST_DAY(NOW() - INTERVAL 1 MONTH), -- 이전달 마지막 일
LAST_DAY(NOW() + INTERVAL 1 MONTH), -- 다음달 마지막 일
DATE_ADD(LAST_DAY(NOW() - INTERVAL 1 MONTH), INTERVAL 1 DAY), -- 현재달 처음 일
DATE_ADD(LAST_DAY(NOW() + INTERVAL 1 MONTH), INTERVAL 1 DAY), -- 다음달 처음 일
DATE_ADD(LAST_DAY(NOW() + INTERVAL 10 MONTH), INTERVAL 1 DAY) -- +10달 처음 일
-- 2024-03-13 19:49:02 2024-01-02 2024-03-31 2024-02-29 2024-04-30 2024-03-01 2024-05-01 2025-02-01
# 날짜 조건 조회
SELECT NOW(), '2024-04-13 20:06:34',
DATE_ADD(LAST_DAY(NOW() - INTERVAL 1 MONTH), INTERVAL 1 DAY),
DATE_ADD(LAST_DAY(NOW() + INTERVAL 1 MONTH), INTERVAL 1 DAY),
CASE
WHEN ('2024-04-13 20:06:34' >= DATE_ADD(LAST_DAY(NOW() - INTERVAL 1 MONTH), INTERVAL 1 DAY)
AND '2024-04-13 20:06:34' < DATE_ADD(LAST_DAY(NOW() + INTERVAL 1 MONTH), INTERVAL 1 DAY))
THEN 33
ELSE 99
END AS _IF
-- 2024-03-13 20:24:09 2024-04-13 20:06:34 2024-03-01 2024-05-01 33