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()の例を参照してください。