Перейти к основному содержимому

date_add,adddate

Описание

Добавляет указанный временной интервал к дате.

Синтаксис

DATETIME DATE_ADD(DATETIME|DATE date,INTERVAL expr type)

Параметры

  • date: Должно быть допустимым выражением даты или даты-времени.
  • expr: временной интервал, который вы хотите добавить. Должен быть типа INT.
  • type: единица временного интервала. Может быть установлен только в одно из следующих значений: YEAR, QUARTER, MONTH, DAY, HOUR, MINUTE, SECOND, MILLISECOND (с версии 3.1.7) и MICROSECOND (с версии 3.1.7).

Возвращаемое значение

Возвращает значение DATETIME. Если дата не существует, например, 2020-02-30, возвращается NULL. Если дата является значением DATE, она будет преобразована в значение DATETIME.

Примеры

select date_add('2010-11-30 23:59:59', INTERVAL 2 DAY);
+-------------------------------------------------+
| date_add('2010-11-30 23:59:59', INTERVAL 2 DAY) |
+-------------------------------------------------+
| 2010-12-02 23:59:59 |
+-------------------------------------------------+

select date_add('2010-12-03', INTERVAL 2 DAY);
+----------------------------------------+
| date_add('2010-12-03', INTERVAL 2 DAY) |
+----------------------------------------+
| 2010-12-05 00:00:00 |
+----------------------------------------+

select date_add('2010-11-30 23:59:59', INTERVAL 2 QUARTER);
+-----------------------------------------------------+
| date_add('2010-11-30 23:59:59', INTERVAL 2 QUARTER) |
+-----------------------------------------------------+
| 2011-05-30 23:59:59 |
+-----------------------------------------------------+

select adddate('2023-10-31 23:59:59', INTERVAL 1 MILLISECOND);
+--------------------------------------------------------+
| adddate('2023-10-31 23:59:59', INTERVAL 1 MILLISECOND) |
+--------------------------------------------------------+
| 2023-10-31 23:59:59.001000 |
+--------------------------------------------------------+

select adddate('2023-10-31 23:59:59', INTERVAL 1 MICROSECOND);
+--------------------------------------------------------+
| adddate('2023-10-31 23:59:59', INTERVAL 1 MICROSECOND) |
+--------------------------------------------------------+
| 2023-10-31 23:59:59.000001 |
+--------------------------------------------------------+