Important
Helios features are now enabled during weekly update windows and are no longer directly tied to SingleStore engine releases. Refer to the release notes to view the latest features available in your Helios cluster.
DATE_ ADD
On this page
The DATE_ function 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.unit include YEAR_, DAY_, DAY_, DAY_, DAY_, HOUR_, HOUR_, HOUR_, MINUTE_, MINUTE_, SECOND_.expr for complex unit types is an arbitrarily delimited string of integers.
Return Type
Date or datetime object.
Remarks
-
In
DATE_andADD() ADDDATE()functions,MOD(.and. . ) a MOD bexpressions inINTERVALexpr unitsyntax are not supported without parentheses due to parser limitations.Use the modulo operator ( %), or wrap theMODexpression in parentheses.-- SupportedSELECT DATE_ADD('2020-01-01', INTERVAL 100 % 3 DAY);SELECT DATE_ADD('2020-01-01', INTERVAL (MOD(100, 3)) DAY);SELECT DATE_ADD('2020-01-01', INTERVAL (100 MOD 3) DAY);-- Not supportedDATE_ADD('2020-01-01', INTERVAL MOD(100, 3) DAY);DATE_ADD('2020-01-01', INTERVAL 100 MOD 3 DAY);
Examples
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 |
+-------------------------------------------------+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 |
+------------------------------------------------------------------+SELECT Emp_No, Hire_Date, DATE_ADD(Hire_Date, INTERVAL 3 MONTH) Contract_End_Date FROM Employees WHERE Emp_No = 12345;
+--------+------------+-------------------+
| Emp_No | Hire_Date | Contract_End_Date |
+--------+------------+-------------------+
| 12345 | 2014-10-28 | 2015-01-28 |
+--------+------------+-------------------+Last modified: