Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Applies to:
Databricks SQL
Databricks Runtime
Returns the sum of expr1 and expr2.
Syntax
expr1 + expr2
Arguments
expr1: A numeric, DATE, TIMESTAMP, or INTERVAL expression.expr2: Ifexpr1is a numericexpr2must be numeric expression, or an INTERVAL otherwise.
Returns
- If
expr1is a numeric, the common maximum type of the arguments. - If
expr1is a DATE andexpr2is a day-time interval the result is a TIMESTAMP. - If
expr1andexpr2are year-month intervals the result is a year-month interval of sufficiently wide units to represent the result. - If
expr1andexpr2are day-time intervals the result is a day-time interval of sufficiently wide units to represent the result. - Otherwise, the result type matches
expr1.
If both expressions are interval they must be of the same class.
When you add a year-month interval to a DATE, Azure Databricks ensures that the resulting date is well formed.
If the result overflows the result type, Azure Databricks raises an ARITHMETIC_OVERFLOW error.
Use try_add to return NULL on overflow.
Warning
In Databricks Runtime, if spark.sql.ansi.enabled is false, an overflow does not cause an error but "wraps" the result instead.
Examples
> SELECT 1 + 2;
3
> SELECT DATE'2021-03-20' + INTERVAL '2' MONTH
2021-5-20
> SELECT TIMESTAMP'2021-03-20 12:15:29' + INTERVAL '3' SECOND
2021-03-20 12:15:32
> SELECT typeof(INTERVAL '3' DAY + INTERVAL '2' HOUR)
interval day to hour
> SELECT DATE'2021-03-31' + INTERVAL '1' MONTH;
2021-04-30
> SELECT 127Y + 1Y;
Error: ARITMETIC_OVERFLOW