try_add-Funktion

Gilt für:Häkchen ja Databricks SQL Häkchen gesetzt ja 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-Ausdruck
  • expr2: Wenn expr1 ein numerischer Wert ist, muss expr2 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 und expr2 ein Tages-/Zeit-Intervall ist, ist das Ergebnis ein TIMESTAMP-Ausdruck.
  • Wenn expr1 und expr2 Jahres-/Monats-Intervalle sind, ist das Ergebnis ein Jahres-/Monats-Intervall mit ausreichend breiten Einheiten, um das Ergebnis darstellen zu können.
  • Wenn expr1 und expr2 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