Condividi tramite


Funzione try_add

Si applica a: segno di spunta sì Databricks SQL segno di spunta sì Databricks Runtime 10.4 LTS e versioni successive

Restituisce la somma di expr1 e expr2 o NULL in caso di errore.

Sintassi

try_add ( expr1 , expr2 )

Questa funzione può anche essere richiamata come funzione window usando la OVER clausola .

Argomenti

  • expr1: espressione numerica, DATE, TIMESTAMP o INTERVAL.
  • expr2: se expr1 è un'espressione numerica expr2 deve essere un'espressione numerica o un intervallo in caso contrario.

Valori restituiti

  • Se expr1 è un valore numerico, il tipo massimo comune degli argomenti.
  • Se expr1 è una data e expr2 è un intervallo di tempo di giorno, il risultato è timeSTAMP.
  • Se expr1 e expr2 sono intervalli anno-mese, il risultato è un intervallo di mesi di anno di unità sufficientemente ampie per rappresentare il risultato.
  • Se expr1 e expr2 sono intervalli di tempo di giorno, il risultato è un intervallo di tempo di giorno di unità sufficientemente ampie per rappresentare il risultato.
  • In caso contrario, il tipo di risultato corrisponde a expr1.

Se entrambe le espressioni sono intervallo, devono essere della stessa classe.

Se il risultato supera il tipo di risultato Databricks SQL restituisce NULL.

Quando si aggiunge un intervallo di anno a un'istanza di DATA Databricks SQL, la data risultante è ben formata.

Esempi

> 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