*
Operatore (segno asterisco)
Si applica a: Databricks SQL Databricks Runtime
Restituisce multiplier
moltiplicato per multiplicand
.
Sintassi
multiplier * multiplicand
Argomenti
multiplier
: espressione numerica o INTERVAL.multiplicand
: espressione numerica o espressione INTERVAL.
Non è possibile specificare un intervallo per entrambi gli argomenti.
Valori restituiti
- Se e
multiplier
multiplicand
sono DECIMAL, il risultato è DECIMAL. - Se
multiplier
omultiplicand
è un intervallo, il risultato è dello stesso tipo. - Se entrambi
multiplier
emultiplicand
sono tipi numerici integrali, il risultato è maggiore dei due tipi. - In tutti gli altri casi il risultato è double.
Se o multiplier
multiplicand
è 0, l'operatore restituisce 0.
Se il risultato della moltiplicazione non è associato al tipo di risultato viene generato un errore ARITHMETIC_OVERFLOW .
Usare try_multiply per restituire NULL
l'overflow.
Avviso
In Databricks Runtime, se spark.sql.ansi.enabled è false
, il risultato "esegue il wrapping" se è fuori dai limiti per i tipi integrali e il risultato è NULL
per i tipi frazionari.
Esempi
> SELECT 3 * 2;
6
> SELECT 2L * 2L;
4L
> SELECT INTERVAL '3' YEAR * 3;
9-0
> SELECT 100Y * 100Y;
Error: ARITHMETIC_OVERFLOW