MySQL 日付関数のあんちょこ
こういうのは一時的に詳しくなって、どうせ2ヶ月後には忘れてるものだからあんちょこを書いておくのだ。
ちなみに全てbestな方法かは知らないのだ。
次の火曜日
SELECT DATE_ADD(CURDATE(), INTERVAL (IF(@day_of_week <= 2, 3 - @day_of_week, 10 - @day_of_week)) DAY);
次の月の2日
SELECT DATE_ADD(LAST_DAY(CURDATE()), INTERVAL 2 DAY);
前日曜日の00:00のunixtime
SELECT UNIX_TIMESTAMP(DATE_SUB(DATE(FROM_UNIXTIME(?)), INTERVAL (DAYOFWEEK(DATE(FROM_UNIXTIME(?))) - 1) DAY));
今月1日の00:00のunixtime
SELECT UNIX_TIMESTAMP(DATE_SUB(DATE(FROM_UNIXTIME(?)), INTERVAL (DAY(DATE(FROM_UNIXTIME(?))) - 1) DAY));
なんか思ったより種類がなかった。