Funkce try_add
Platí pro: Databricks SQL Databricks Runtime 10.4 LTS a vyšší
Vrátí součet expr1
a expr2
hodnotu NULL v případě chyby.
Syntaxe
try_add ( expr1 , expr2 )
Tuto funkci lze také vyvolat jako funkci okna pomocí OVER
klauzule.
Argumenty
expr1
: Číselný výraz, DATUM, ČASOVÉ RAZÍTKO nebo INTERVAL.expr2
: Pokudexpr1
je číselnýexpr2
výraz, musí být číselný výraz nebo jinak interval.
Návraty
- Pokud
expr1
je argument číselný, jedná se o společný maximální typ argumentů. - Pokud
expr1
je datem aexpr2
jedná se o denní interval, výsledkem je časové razítko. - Pokud
expr1
aexpr2
jsou intervaly mezi rokem, je výsledkem interval rok-měsíc dostatečně širokých jednotek, aby představoval výsledek. - Pokud
expr1
se jedná oexpr2
denní intervaly, je výsledkem denní interval dostatečně širokých jednotek, aby představoval výsledek. - V opačném případě se typ výsledku shoduje
expr1
.
Pokud jsou oba výrazy interval, musí mít stejnou třídu.
Pokud výsledek přeteče typ výsledku Databricks SQL vrátí hodnotu NULL.
Když přidáte interval pro rok do DATA Databricks SQL, zajistí se, že výsledné datum bude správně vytvořené.
Příklady
> SELECT try_add(1, 2);
3
> SELECT try_add(DATE'2021-03-20', INTERVAL '2' MONTH);
2021-5-20
> SELECT try_add(TIMESTAMP'2021-03-20 12:15:29', INTERVAL '3' SECOND);
2021-03-20 12:15:32
> SELECT typeof(try_add(INTERVAL '3' DAY, INTERVAL '2' HOUR));
interval day to hour
> SELECT try_add(DATE'2021-03-31', INTERVAL '1' MONTH);
2021-04-30
> SELECT try_add(127Y, 1Y);
NULL