La documentation est assez clair sur la différence :
En d'autres termes, lorsque les arguments sont des entiers positifs, la fonction mod renvoie un nombre positif entre 0 et le deuxième argument. La fonction reste renvoie un nombre dont la valeur absolue est inférieure au deuxième argument divisé par 2.
Les différences peuvent être plus frappantes pour les nombres négatifs. Voici un exemple de différence :
REMAINDER(-15, 4)
MOD(-15, 4)
Le premier donne -3
et le deuxième 1
.
MODIFIER :
Que se passe-t-il ici? Combien de fois 4 va-t-il dans -15. Une méthode est "-4" fois avec un reste de 1. C'est-à-dire :-15 =4*(-4) + 1. L'autre est "-3" fois :-15 =4*(-3) - 3.
La différence est -15/4 exprimée sous forme d'entier. En utilisant floor, vous obtenez -4
. En utilisant round, vous obtenez -3
.