*
(signe astérisque) opérateur
S’applique à : Databricks SQL Databricks Runtime
Retourne multiplier
multiplié par multiplicand
.
Syntaxe
multiplier * multiplicand
Arguments
multiplier
: expression numérique ou de type intervalle (INTERVAL).multiplicand
: expression numérique ou de type intervalle (INTERVAL).
Vous ne pouvez pas spécifier d’intervalle (INTERVAL) pour les deux arguments.
Retours
- Si
multiplier
etmultiplicand
sont tous deux de type DECIMAL, le résultat est DECIMAL. - Si
multiplier
oumultiplicand
est un intervalle (INTERVAL), le résultat est du même type. - Si
multiplier
etmultiplicand
sont tous deux des types numériques intégraux, le résultat est le plus grand des deux types. - Dans tous les autres cas, le résultat est une valeur DOUBLE.
Si le multiplier
ou le multiplicand
est égal à 0, l’opérateur retourne 0.
Si le résultat de la multiplication est en dehors de la limite pour le type de résultat, une erreur ARITHMETIC_OVERFLOW est générée.
Utilisez try_multiply pour retourner NULL
en cas de dépassement de capacité.
Avertissement
Dans Databricks Runtime, si spark.sql.ansi.enabled est false
, le résultat est « enveloppé » s’il est en dehors des limites pour les types intégraux, et le résultat est NULL
pour les types fractionnaires.
Exemples
> SELECT 3 * 2;
6
> SELECT 2L * 2L;
4L
> SELECT INTERVAL '3' YEAR * 3;
9-0
> SELECT 100Y * 100Y;
Error: ARITHMETIC_OVERFLOW