Teilen über


*-Operator (Sternzeichen)

Gilt für:Häkchen für „Ja“ Databricks SQL Häkchen für „Ja“ Databricks Runtime

Der Operator gibt multiplier multipliziert mit multiplicand zurück.

Syntax

multiplier * multiplicand

Argumente

  • multiplier: Ein numerischer oder INTERVAL Ausdruck.
  • multiplicand: Ein numerischer Ausdruck oder INTERVAL Ausdruck.

Sie dürfen kein INTERVAL für beide Argumente angeben.

Rückgabe

  • Wenn sowohl multiplier als auch multiplicandDECIMAL sind, lautet das Ergebnis DECIMAL.
  • Wenn multiplier oder multiplicand ein INTERVAL sind, ist das Ergebnis vom gleichen Typ.
  • Wenn multiplier und multiplicand integrale numerische Typen sind, ist das Ergebnis der höhere Wert der beiden Typen.
  • In allen anderen Fällen ist das Ergebnis ein DOUBLE.

Wenn entweder multiplier oder multiplicand 0 ist, gibt der Operator 0 zurück.

Wenn das Ergebnis der Multiplikation außerhalb der Grenze für den Ergebnistyp liegt, wird ein ARITHMETIC_OVERFLOW-Fehler ausgelöst.

Verwenden Sie try_multiply, um bei Überlauf NULL zurückzugeben.

Warnung

Wenn spark.sql.ansi.enabled in Databricks Runtime false ist, wird das Ergebnis „umschlossen“, wenn es außerhalb der Grenzwerte für integrale Typen liegt, und ist NULL für Bruchzahltypen.

Beispiele

> SELECT 3 * 2;
 6

> SELECT 2L * 2L;
 4L

> SELECT INTERVAL '3' YEAR * 3;
 9-0

> SELECT 100Y * 100Y;
 Error: ARITHMETIC_OVERFLOW