Catégories :

Fonctions numériques (arrondi et troncation)

MOD

Renvoie le reste de l’entrée expr1 divisé par l’entrée expr2.

Équivalent à l”opérateur arithmétique modulo (par exemple, expr1 % expr2).

Syntaxe

MOD( <expr1> , <expr2> )
Copy

Arguments

expr1

Une expression numérique

expr2

Une expression numérique

Renvoie

Renvoie un nombre entier ou un nombre décimal à virgule fixe.

Notes sur l’utilisation

  • expr1 et expr2 doivent être des expressions numériques. Ils ne sont pas obligés d’être des entiers.

  • La valeur retournée est le reste de la division par troncature (arrondi vers zéro), et non de la division par étage (arrondi vers le bas). Par conséquent, si expr1 est négatif, la valeur de retour est négative. Ce comportement est différent de celui de certaines langues de programmation (comme Python), mais conforme à la norme SQL. Pour plus d’informations, consultez la page Wikipedia Modulo.

Exemples

L’exemple suivant montre l’utilisation de la fonction MOD() sur les valeurs entières et non entières :

SELECT MOD(3, 2) AS mod1, MOD(4.5, 1.2) AS mod2;
Copy

Sortie :

+------+------+
| MOD1 | MOD2 |
+------+------+
|    1 |  0.9 |
+------+------+
Copy