月初と月末の日付を取得する方法です。
# 月初 select DATE_FORMAT(CURDATE(), '%Y-%m-01'); # 月末 select LAST_DAY(CURDATE());
月末は、LAST_DAY()で日時を取得できます。
月初は、そういった関数がないので直接日時の01を指定する感じですね。
実際は、CURDATE()の部分にカラムを指定して使うパターンが多いかと思います。
ついでなので前月月初と前月月末も書いてみます。
# 前月月初 SELECT DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 1 MONTH), '%Y-%m-01'); # 前月月末 SELECT LAST_DAY(DATE_SUB(CURDATE(), INTERVAL 1 MONTH));
DATE_SUB()で一月マイナスして、その月の月初と月末を取得しています。
最後までお付き合い頂きありがとうございました!