宣言
DATE_ADD(date, INTERVAL expr unit)
説明
DATE_ADD関数は、指定された日付に一定の時間を加えて計算結果を返します。
パラメータの説明は以下のとおりです:
date日時の基準を表し、日付型、時間型、日時型を指定できます。expr時間間隔を表し、負の値を指定できます。unit時間間隔の単位を表します。
以下はすべての時間間隔単位のリストです:
| 単位 | タイプ | 意味 | フォーマット |
|---|---|---|---|
MICROSECOND |
独立 | マイクロ秒 | MICROSECONDS |
SECOND |
独立 | 秒 | SECONDS |
MINUTE |
独立 | 分鐘 | MINUTES |
HOUR |
独立 | 時間 | HOURS |
DAY |
独立 | 日 | DAYS |
WEEK |
独立 | 週 | WEEKS |
MONTH |
独立 | 月 | MONTHS |
QUARTER |
独立 | 四半期 | QUARTERS |
YEAR |
独立 | 年 | YEARS |
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_SECOND |
組み合わせ | 日から秒 | 'DAYS HOURS:MINUTES:SECONDS' |
DAY_MINUTE |
組み合わせ | 日から分 | 'DDAYSD HOURS:MINUTES' |
DAY_HOUR |
組み合わせ | 日から時間 | 'DAYS HOURS' |
YEAR_MONTH |
組み合わせ | 年から月 | 'YEARS-MONTHS' |
例
obclient> SELECT
DATE_ADD(NOW(), INTERVAL 5 DAY),
DATE_ADD('2021-01-10', INTERVAL 5 MICROSECOND),
DATE_ADD('2021-01-10', INTERVAL 5 SECOND),
DATE_ADD('2021-01-10', INTERVAL 5 MINUTE),
DATE_ADD('2021-01-10', INTERVAL 5 HOUR),
DATE_ADD('2021-01-10', INTERVAL 5 DAY),
DATE_ADD('2021-01-10', INTERVAL 5 WEEK),
DATE_ADD('2021-01-10', INTERVAL 5 MONTH),
DATE_ADD('2021-01-10', INTERVAL 5 QUARTER),
DATE_ADD('2021-01-10', INTERVAL 5 YEAR),
DATE_ADD('2021-01-10', INTERVAL '5.000005' SECOND_MICROSECOND),
DATE_ADD('2021-01-10', INTERVAL '05:05.000005' MINUTE_MICROSECOND),
DATE_ADD('2021-01-10', INTERVAL '05:05' MINUTE_SECOND),
DATE_ADD('2021-01-10', INTERVAL '05:05:05.000005' HOUR_MICROSECOND),
DATE_ADD('2021-01-10', INTERVAL '05:05:05' HOUR_SECOND),
DATE_ADD('2021-01-10', INTERVAL '05:05' HOUR_MINUTE),
DATE_ADD('2021-01-10', INTERVAL '01 05:05:05.000005' DAY_MICROSECOND),
DATE_ADD('2021-01-10', INTERVAL '01 05:05:05' DAY_SECOND),
DATE_ADD('2021-01-10', INTERVAL '01 05:05' DAY_MINUTE),
DATE_ADD('2021-01-10', INTERVAL '01 05' DAY_HOUR),
DATE_ADD('2021-01-10', INTERVAL '1-01' YEAR_MONTH)
\G
*************************** 1. row ***************************
DATE_ADD(NOW(), INTERVAL 5 DAY): 2025-10-14 16:46:21
DATE_ADD('2021-01-10', INTERVAL 5 MICROSECOND): 2021-01-10 00:00:00.000005
DATE_ADD('2021-01-10', INTERVAL 5 SECOND): 2021-01-10 00:00:05
DATE_ADD('2021-01-10', INTERVAL 5 MINUTE): 2021-01-10 00:05:00
DATE_ADD('2021-01-10', INTERVAL 5 HOUR): 2021-01-10 05:00:00
DATE_ADD('2021-01-10', INTERVAL 5 DAY): 2021-01-15
DATE_ADD('2021-01-10', INTERVAL 5 WEEK): 2021-02-14
DATE_ADD('2021-01-10', INTERVAL 5 MONTH): 2021-06-10
DATE_ADD('2021-01-10', INTERVAL 5 QUARTER): 2022-04-10
DATE_ADD('2021-01-10', INTERVAL 5 YEAR): 2026-01-10
DATE_ADD('2021-01-10', INTERVAL '5.000005' SECOND_MICROSECOND): 2021-01-10 00:00:05.000005
DATE_ADD('2021-01-10', INTERVAL '05:05.000005' MINUTE_MICROSECOND): 2021-01-10 00:05:05.000005
DATE_ADD('2021-01-10', INTERVAL '05:05' MINUTE_SECOND): 2021-01-10 00:05:05
DATE_ADD('2021-01-10', INTERVAL '05:05:05.000005' HOUR_MICROSECOND): 2021-01-10 05:05:05.000005
DATE_ADD('2021-01-10', INTERVAL '05:05:05' HOUR_SECOND): 2021-01-10 05:05:05
DATE_ADD('2021-01-10', INTERVAL '05:05' HOUR_MINUTE): 2021-01-10 05:05:00
DATE_ADD('2021-01-10', INTERVAL '01 05:05:05.000005' DAY_MICROSECOND): 2021-01-11 05:05:05.000005
DATE_ADD('2021-01-10', INTERVAL '01 05:05:05' DAY_SECOND): 2021-01-11 05:05:05
DATE_ADD('2021-01-10', INTERVAL '01 05:05' DAY_MINUTE): 2021-01-11 05:05:00
DATE_ADD('2021-01-10', INTERVAL '01 05' DAY_HOUR): 2021-01-11 05:00:00
DATE_ADD('2021-01-10', INTERVAL '1-01' YEAR_MONTH): 2022-02-10
1 row in set (0.003 sec)