Outdated Version
You are viewing an older version of this section. View current production version.
DATE_ADD
Adds the given interval of time to a date or datetime object.
Syntax
DATE_ADD (dateobj INTERVAL expr unit)
ADDDATE (dateobj INTERVAL expr unit)
ADDDATE (dateobj, days)
Arguments
- dateobj: a valid date, datetime, or parsable date string
- expr: the number of units to add if unit is a simple type, or a string representation of the units to add if unit is a complex type. Can be negative.
- days: number of days to add. Can be negative.
Simple types allowed for unit
include YEAR
, QUARTER
, MONTH
, WEEK
, DAY
, HOUR
, MINUTE
, SECOND
, MICROSECOND
. Complex types allowed for unit
include YEAR_MONTH
, DAY_HOUR
, DAY_MINUTE
, DAY_SECOND
, DAY_MICROSECOND
, HOUR_MINUTE
, HOUR_SECOND
, HOUR_MICROSECOND
, MINUTE_SECOND
, MINUTE_MICROSECOND
, SECOND_MICROSECOND
. The expected format of expr
for complex unit
types is an arbitrarily delimited string of integers.
Return Type
Date or datetime object. If dateobj is not a valid date, returns NULL.
Examples
memsql> select ADDDATE("2010-04-02 01:23:54", INTERVAL 1 YEAR);
+-------------------------------------------------+
| ADDDATE("2010-04-02 01:23:54", INTERVAL 1 YEAR) |
+-------------------------------------------------+
| 2011-04-02 01:23:54 |
+-------------------------------------------------+
memsql> select ADDDATE("2010-04-02", INTERVAL "1 02:03:04.567" DAY_MICROSECOND);
+------------------------------------------------------------------+
| ADDDATE("2010-04-02", INTERVAL "1 02:03:04.567" DAY_MICROSECOND) |
+------------------------------------------------------------------+
| 2010-04-03 02:03:04.567000 |
+------------------------------------------------------------------+