Compartir a través de


* (asterisco) (operador)

Se aplica a:casilla marcada como Sí Databricks SQL casilla marcada como Sí Databricks Runtime

Devuelve multiplier multiplicado por multiplicand.

Sintaxis

multiplier * multiplicand

Argumentos

  • multiplier: expresión numérica o de intervalo.
  • multiplicand: expresión numérica o expresión de intervalo.

No puede especificar un valor de intervalo para ambos argumentos.

Devoluciones

  • Si multiplier y multiplicand tienen valor decimal, el resultado es un valor decimal.
  • Si multiplier o multiplicand es un valor de intervalo, el resultado es del mismo tipo.
  • Si tanto multiplier como multiplicand son tipos numéricos enteros, el resultado es el mayor de los dos tipos.
  • En todos los demás casos, el resultado es un valor DOUBLE.

Si multiplier o multiplicand es 0, el operador devuelve 0.

Si el resultado de la multiplicación está fuera del límite para el tipo de resultado, se produce un error ARITHMETIC_OVERFLOW.

Use try_multiply para volver NULL al desbordamiento.

Advertencia

En Databricks Runtime, si spark.sql.ansi.enabled es false, el resultado se “encapsula” si está fuera de los límites para los tipos enteros, y el resultado es NULL para los tipos fraccionales.

Ejemplos

> SELECT 3 * 2;
 6

> SELECT 2L * 2L;
 4L

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

> SELECT 100Y * 100Y;
 Error: ARITHMETIC_OVERFLOW