try_add
-Funktion
Gilt für: Databricks SQL Databricks Runtime 10.4 LTS und höher
Gibt die Summe von expr1
und expr2
oder bei einem Fehler NULL zurück.
Syntax
try_add ( expr1 , expr2 )
Diese Funktion kann auch mithilfe der OVER
-Klausel als Fensterfunktion aufgerufen werden.
Argumente
expr1
: ein numerischer Ausdruck oder ein DATE-, TIMESTAMP- oder INTERVAL-Ausdruckexpr2
: Wennexpr1
ein numerischer Wert ist, mussexpr2
ein numerischer Ausdruck oder andernfalls ein INTERVAL sein.
Gibt zurück
- Wenn
expr1
ein numerischer Wert ist, der maximale Typ der Argumente - Wenn
expr1
ein DATE-Ausdruck undexpr2
ein Tages-/Zeit-Intervall ist, ist das Ergebnis ein TIMESTAMP-Ausdruck. - Wenn
expr1
undexpr2
Jahres-/Monats-Intervalle sind, ist das Ergebnis ein Jahres-/Monats-Intervall mit ausreichend breiten Einheiten, um das Ergebnis darstellen zu können. - Wenn
expr1
undexpr2
Tages-/Zeit-Intervalle sind, ist das Ergebnis ein Tages-/Zeit-Intervall mit ausreichend breiten Einheiten, um das Ergebnis darstellen zu können. - Andernfalls entspricht der Ergebnistyp
expr1
.
Wenn beide Ausdrücke ein Intervall sind, müssen sie derselben Klasse angehören.
Wenn das Ergebnis einen Überlauf des Ergebnistyps verursacht, gibt Databricks SQL NULL zurück.
Wenn Sie einer DATE-Databricks SQL ein Jahres-/Monats-Intervall hinzufügen, wird sichergestellt, dass das sich ergebende Datum wohlgeformt ist.
Beispiele
> 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