Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
MODfonction
Renvoie le reste de deux nombres, autrement dit une opération modulo. Pour calculer le résultat, le premier paramètre est divisé par le second.
Syntaxe
MOD(number1, number2)
Arguments
- number1
-
Le premier paramètre d’entrée est un nombre
INTEGER
,SMALLINT
,BIGINT
ouDECIMAL
. Si un paramètre est de typeDECIMAL
, l’autre paramètre doit également être de typeDECIMAL
. Si un paramètre est de typeINTEGER
, l’autre paramètre peut être de typeINTEGER
,SMALLINT
ouBIGINT
. Les deux paramètres peuvent également être de typeSMALLINT
ouBIGINT
, mais un paramètre ne peut pas être de typeSMALLINT
si l’autre est de typeBIGINT
. - number2
-
Le deuxième paramètre est un nombre
INTEGER
,SMALLINT
,BIGINT
ouDECIMAL
. Les mêmes règles de type de données s’appliquent à number2 en ce qui concerne number1.
Type de retour
Le type de retour de la MOD fonction est du même type numérique que les paramètres d'entrée, si les deux paramètres d'entrée sont du même type. Toutefois, si un paramètre d’entrée est de type INTEGER
, le type renvoyé est également INTEGER
. Les types renvoyés valides sont DECIMAL
, INT
, SMALLINT
et BIGINT
.
Notes d’utilisation
Vous pouvez utiliser %
comme opérateur modulo.
Exemples
Pour renvoyer le reste de la division d’un nombre par un autre, utilisez l’exemple suivant.
SELECT MOD(10, 4);
+-----+ | mod | +-----+ | 2 | +-----+
Pour renvoyer un DECIMAL
résultat lorsque vous utilisez la MOD fonction, utilisez l'exemple suivant.
SELECT MOD(10.5, 4);
+-----+ | mod | +-----+ | 2.5 | +-----+
Pour convertir un nombre avant d'exécuter la MOD fonction, utilisez l'exemple suivant. Pour de plus amples informations, veuillez consulter CASTfonction.
SELECT MOD(CAST(16.4 AS INTEGER), 5);
+-----+ | mod | +-----+ | 1 | +-----+
Pour vérifier si le premier paramètre est pair en le divisant par 2, utilisez l’exemple suivant.
SELECT mod(5,2) = 0 AS is_even;
+---------+ | is_even | +---------+ | false | +---------+
Pour utiliser % comme opérateur modulo, utilisez l’exemple suivant.
SELECT 11 % 4 as remainder;
+-----------+ | remainder | +-----------+ | 3 | +-----------+
L'exemple suivant utilise l'TICKITexemple de base de données. Pour de plus amples informations, veuillez consulter Exemple de base de données.
Pour renvoyer les informations relatives aux catégories impaires du CATEGORY tableau, utilisez l'exemple suivant.
SELECT catid, catname FROM category WHERE MOD(catid,2)=1 ORDER BY 1,2;
+-------+-----------+ | catid | catname | +-------+-----------+ | 1 | MLB | | 3 | NFL | | 5 | MLS | | 7 | Plays | | 9 | Pop | | 11 | Classical | +-------+-----------+