Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Lorsqu’une requête Entity SQL a plusieurs opérateurs, la priorité de l’opérateur détermine la séquence dans laquelle les opérations sont effectuées. L’ordre d’exécution peut affecter considérablement le résultat de la requête.
L'ordre de priorité des opérateurs est indiqué dans le tableau suivant. Un opérateur avec un niveau supérieur est évalué avant qu’un opérateur avec un niveau inférieur.
| Niveau | Type d'opération | Opérateur |
|---|---|---|
| 1 | Primaire | . , [] () |
| 2 | Unaire | ! not |
| 3 | Multiplicatif | * / % |
| 4 | Additif | + - |
| 5 | Classement | < > <= >= |
| 6 | Égalité | = != <> |
| 7 | AND conditionnel | and && |
| 8 | OR conditionnel | or || |
Lorsque deux opérateurs d’une expression ont le même niveau de priorité d’opérateur, ils sont évalués de gauche à droite, en fonction de leur position dans la requête. Par exemple, x+y-z est évalué en tant que (x+y)-z.
Vous pouvez utiliser des parenthèses pour remplacer la priorité définie des opérateurs dans une requête. Tout ce qui se trouve entre parenthèses est évalué en premier pour produire un résultat unique avant que ce résultat puisse être utilisé par n’importe quel opérateur en dehors des parenthèses. Par exemple, x+y*z multiplie y par z et ajoute x, mais (x+y)*z ajoute x , y puis multiplie le résultat par z.