* operator (asterisktecken)

Gäller för:check markerad ja Databricks SQL-kontroll markerad ja Databricks Runtime

Returnerar multiplier multiplicerat multiplicandmed .

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.

Returer

  • Om både multiplier och multiplicand är DECIMAL är resultatet DECIMAL.
  • Om multiplier eller multiplicand är ett INTERVALL är resultatet av samma typ.
  • Om både multiplier och multiplicand är helt numeriska typer blir 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