DATE_ SUB
On this page
The DATE_ function subtracts the given interval of time to a date or datetime object.
Syntax
DATE_SUB (dateobj, INTERVAL expr unit)
SUBDATE (dateobj, INTERVAL expr unit)
SUBDATE (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 subtract.
Can be negative.
See DATE_
Return Type
Date or datetime object.
Remarks
-
In
DATE_andSUB() SUBDATE()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_SUB('2020-01-01', INTERVAL 100 % 3 DAY);SELECT DATE_SUB('2020-01-01', INTERVAL (MOD(100, 3)) DAY);SELECT DATE_SUB('2020-01-01', INTERVAL (100 MOD 3) DAY);-- Not supportedSELECT DATE_SUB('2020-01-01', INTERVAL MOD(100, 3) DAY);SELECT DATE_SUB('2020-01-01', INTERVAL 100 MOD 3 DAY);
Examples
SELECT DATE_SUB('2010-04-02', INTERVAL 1 WEEK);
+-----------------------------------------+
| DATE_SUB("2010-04-02", INTERVAL 1 WEEK) |
+-----------------------------------------+
| 2010-03-26 |
+-----------------------------------------+Last modified: