MySQLでは、DATE_ADD()
を使用できます 指定された時間を日付に追加する関数。たとえば、これを使用して、特定の日付に5日を追加できます。日、週、月、四半期、年などを追加するかどうかを指定できます。秒、マイクロ秒などの時間値を追加することもできます。
この記事には、DATE_ADD()
の方法を示す例が含まれています 機能は動作します。
構文
構文は次のようになります:
DATE_ADD(date,INTERVAL expr unit)
例1-基本的な使用法
使用例を次に示します。
SELECT DATE_ADD('2020-10-01', INTERVAL 20 DAY) AS Result;
結果:
+------------+ | Result | +------------+ | 2020-10-21 | +------------+
この例では、最初の引数で指定された日付に20日が追加されます。
例2–その他の日付単位
単位は、日、週、月、年などで指定できます。いくつかの例を示します。
SELECT '2020-10-01' AS 'Start Date', DATE_ADD('2020-10-01', INTERVAL 2 WEEK) AS '+2 Weeks', DATE_ADD('2020-10-01', INTERVAL 2 MONTH) AS '+2 Months', DATE_ADD('2020-10-01', INTERVAL 2 QUARTER) AS '+2 Quarters', DATE_ADD('2020-10-01', INTERVAL 2 YEAR) AS '+2 Years';
結果:
+------------+------------+------------+-------------+------------+ | Start Date | +2 Weeks | +2 Months | +2 Quarters | +2 Years | +------------+------------+------------+-------------+------------+ | 2020-10-01 | 2020-10-15 | 2020-12-01 | 2021-04-01 | 2022-10-01 | +------------+------------+------------+-------------+------------+
例3–時間単位
日付/時刻の値に時間単位を追加することもできます。これが例です。
SELECT DATE_ADD('2020-10-01 01:00:00', INTERVAL 10 HOUR) AS Result;
結果:
+---------------------+ | Result | +---------------------+ | 2020-10-01 11:00:00 | +---------------------+
また、同時に複数のユニットを指定することができます。たとえば、時間と分を指定できます。このように。
SELECT DATE_ADD('2020-10-01 01:00:00', INTERVAL '1:30' HOUR_MINUTE) AS Result;
結果:
+---------------------+ | Result | +---------------------+ | 2020-10-01 02:30:00 | +---------------------+
期待値
次の表に、有効な単位値と予想される形式を示します。
unit 価値 | 予想されるexpr フォーマット |
---|---|
MICROSECOND | マイクロ秒 |
2番目 | 秒 |
MINUTE | 分 |
時間 | 時間 |
日 | 日 |
週 | 週 |
月 | 月 |
QUARTER | 四半期 |
年 | 年 |
SECOND_MICROSECOND | 「SECONDS.MICROSECONDS」 |
MINUTE_MICROSECOND | 「MINUTES:SECONDS.MICROSECONDS」 |
MINUTE_SECOND | 「MINUTES:SECONDS」 |
HOUR_MICROSECOND | 「HOURS:MINUTES:SECONDS.MICROSECONDS」 |
HOUR_SECOND | 「HOURS:MINUTES:SECONDS」 |
HOUR_MINUTE | 「HOURS:MINUTES」 |
DAY_MICROSECOND | 「DAYSHOURS:MINUTES:SECONDS.MICROSECONDS」 |
DAY_SECOND | 「DAYSHOURS:MINUTES:SECONDS」 |
DAY_MINUTE | 「DAYSHOURS:MINUTES」 |
DAY_HOUR | 「DAYSHOURS」 |
YEAR_MONTH | 「YEARS-MONTHS」 |
ADDDATE()
を使用することもできます 同じことを行う関数(DATE_ADD()
の同義語です 同じ構文を使用する場合に機能します)。さらに、ADDDATE()
の構文 2番目の形式があります。これは、日付に特定の日数を追加する簡単な方法です。詳細については、MySQLのADDDATE()の例を参照してください。