Table des matières

Search

  1. Préface
  2. Le langage de transformation
  3. Constantes
  4. Opérateurs
  5. Variables
  6. Dates
  7. Fonctions

Référence du langage de transformation

Référence du langage de transformation

MOD

MOD

Renvoie le reste d'un calcul de division. Par exemple,
MOD (8,5)
renvoie 3.

Syntaxe

MOD(
numeric_value
,
divisor
)
Le tableau suivant décrit les arguments de cette commande:
Argument
Obligatoire/
Facultatif
Description
numeric_value
Obligatoire
Type de données numérique. Valeurs que vous voulez diviser. Vous pouvez entrer l'expression de transformation valide de votre choix.
diviseur
Obligatoire
Valeur numérique avec laquelle effectuer la division. Le diviseur ne peut pas être 0.

Valeur de retour

Valeur numérique du type de données que vous passez à la fonction. Reste de la valeur numérique divisée par le diviseur.
NULL si une valeur transmise à la fonction est NULL.

Exemples

L'expression suivante renvoie le modulo des valeurs dans le port PRICE divisé par les valeurs dans le port QTY :
MOD( PRICE, QTY )
PRICE
QTY
RETURN VALUE
10.00
2
0
12.00
5
2
9.00
2
1
15.00
3
0
NULL
3
NULL
20.00
NULL
NULL
25.00
0
Error. Integration Service does not write row.
La dernière ligne (25, 0) a généré une erreur, car vous ne pouvez diviser par 0. Pour éviter de diviser par 0, vous pouvez créer une expression comme suit, qui renvoie le modulo du prix divisé par la quantité uniquement si la quantité n'est pas égale à 0. Si la quantité est 0, la fonction renvoie NULL :
MOD( PRICE, IIF( QTY = 0, NULL, QTY ))
PRICE
QTY
RETURN VALUE
10.00
2
0
12.00
5
2
9.00
2
1
15.00
3
0
NULL
3
NULL
20.00
NULL
NULL
25.00
0
NULL
La dernière ligne (25, 0) a généré une valeur nulle au lieu d'une erreur, car la fonction IIF remplace la valeur nulle par 0 dans le port QTY.