問題:
MySQLデータベースに昨日の日付(時間なし)を表示したい。
解決策:
SELECT DATE_SUB(CURDATE(), INTERVAL 1 DAY) AS yesterday_date;
今日が2020-09-24であると仮定すると、結果は次のようになります。
yesterday_date |
---|
2020-09-23 |
ディスカッション:
昨日の日付を取得するには、今日の日付から1日を引く必要があります。 CURDATE()
を使用する 今日の日付を取得します。 MySQLでは、DATE_SUB()
を使用して任意の日付間隔を減算できます 働き。ここでは、1日を引く必要があるため、DATE_SUB(CURDATE(), INTERVAL 1 DAY)
を使用します。 昨日の日付を取得します。この計算の結果には、まだ列タイプが日付であることに注意してください。
同じように簡単に任意の時間間隔で戻ることができます。次に例を示します:
SELECT DATE_SUB(CURDATE(), INTERVAL 2 MONTH) AS date_two_months_ago;
明日の日付も簡単に計算できます。 DATE_ADD()
を使用します 日付に間隔を追加する関数。
SELECT DATE_ADD(CURDATE(), INTERVAL 1 DAY) AS tomorrow_date;