Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op: Databricks SQL
Databricks Runtime 10.4 LTS en hoger
Retourneert het verschil van expr2
met expr1
, of NULL
in geval van overloop.
Syntaxis
try_subtract ( expr1 , expr2 )
Argumenten
-
expr1
: Een numerieke, DATUM-, TIMESTAMP- of INTERVAL-expressie. -
expr2
: Alsexpr1
een numeriekeexpr2
is, moet het een numerieke expressie zijn, of anders een INTERVAL.
Retouren
- Als
expr1
een numerieke waarde is, dan is het gemeenschappelijke maximumtype van de argumenten. - Als
expr1
het een DATUM is enexpr2
een dag-tijdsinterval is, is het resultaat een TIJDSTEMPEL. - Als
expr1
enexpr2
jaarmaandintervallen zijn, is het resultaat een interval van een jaarmaand van voldoende brede eenheden om het resultaat weer te geven. - Als
expr1
enexpr2
dag-tijdintervallen zijn, is het resultaat een dag-tijdsinterval van voldoende brede eenheden om het resultaat weer te geven. - Anders komt het resultaattype overeen met
expr1
.
Als beide expressies interval zijn, moeten ze van dezelfde klasse zijn.
Als het resultaat overloopt, retourneert Databricks SQL NULL.
Wanneer u een jaar-maandinterval aftrekt van een datum, zal Databricks SQL ervoor zorgen dat de resulterende datum correct is.
Voorbeelden
> SELECT try_subtract(1, 2);
-1
> SELECT try_subtract(DATE'2021-03-20', INTERVAL '2' MONTH);
2021-1-20
> SELECT try_subtract(TIMESTAMP'2021-03-20 12:15:29', INTERVAL '3' SECOND);
2021-03-20 12:15:26
> SELECT typeof(try_subtract(INTERVAL '3' DAY, INTERVAL '2' HOUR));
interval day to hour
> SELECT try_subtract(DATE'2021-03-31', INTERVAL '1' MONTH);
2021-02-28
> SELECT try_subtract(-128Y, 1Y);
NULL