*
operator (asterisktecken)
Gäller för: Databricks Databricks Runtime
Returnerar multiplier
multiplicerat multiplicand
med .
Syntax
multiplier * multiplicand
Argument
multiplier
: Ett numeriskt uttryck eller ETT INTERVAL-uttryck.multiplicand
: Ett numeriskt uttryck eller ETT INTERVAL-uttryck.
Du kanske inte anger ett INTERVALL för båda argumenten.
Returnerar
- Om både
multiplier
ochmultiplicand
är DECIMAL är resultatet DECIMAL. - Om
multiplier
ellermultiplicand
är ett INTERVALL är resultatet av samma typ. - Om både
multiplier
ochmultiplicand
är helt numeriska typer är resultatet det större av de två typerna. - I alla andra fall är resultatet en DOUBLE.
Om antingen multiplier
eller multiplicand
är 0 returnerar operatorn 0.
Om resultatet av multiplikationen ligger utanför gränsen för resultattypen utlöses ett ARITHMETIC_OVERFLOW fel.
Använd try_multiply för att återgå NULL
till spill.
Varning
I Databricks Runtime, om spark.sql.ansi.enabled är false
, "wraps" resultatet om det ligger utanför gränserna för integraltyper och resultatet är NULL
för bråktyper.
Exempel
> SELECT 3 * 2;
6
> SELECT 2L * 2L;
4L
> SELECT INTERVAL '3' YEAR * 3;
9-0
> SELECT 100Y * 100Y;
Error: ARITHMETIC_OVERFLOW