Opérateurs (syntaxe MDX)
Dans la syntaxe MDX (Multidimensional Expressions), les opérateurs permettent d'exécuter les actions suivantes :
Modifier des données, soit définitivement, soit temporairement.
Chercher des valeurs ou des objets selon un critère de recherche.
Implémenter une décision entre des valeurs ou des expressions.
Tester des conditions précises avant de commencer ou de valider une transaction, ou avant d'exécuter des instructions spécifiques.
MDX prend en charge les opérateurs répertoriés dans le tableau suivant :
Si vous devez effectuer ce type d'opération | Utilisation |
---|---|
Affecter une valeur à une variable ou associer une colonne de jeu de résultats à un alias | Opérateurs d’assignation |
Addition, soustraction, multiplication, division. | Opérateurs arithmétiques |
Tester une condition telle que AND, OR, NOT et XOR. | Opérateurs au niveau du bit |
Comparer une valeur à une autre ou à une expression | Opérateurs de comparaison |
Combiner deux chaînes en une de façon permanente ou temporaire. | Opérateurs de concaténation |
Combiner deux expressions d'ensemble en une de façon permanente ou temporaire. | Opérateurs d’ensembles |
Exécute une opération sur un opérande. | Opérateurs unaires |
Notes
Dans les requêtes, toute personne qui peut voir les données d'un cube devant être utilisé avec un certain type d'opérateur peut effectuer des opérations. Cependant, vous avez besoin des droits adéquats pour de pouvoir modifier les données.
Si vous utilisez plusieurs opérateurs, l'ordre dans lequel la syntaxe MDX les évalue est important. De même, l'utilisateur des opérateurs peut exiger la conversion d'un type de données en un autre avant que les opérateurs puissent être évalués.
Évaluation d'expressions complexes
Vous pouvez créer une expression en utilisant des opérateurs pour combiner plusieurs expressions plus petites. Dans ces expressions complexes, MDX évalue les opérateurs dans l’ordre en fonction de la définition de la priorité des opérateurs utilisée par Analysis Services. MDX effectue des opérateurs avec une priorité plus élevée avant d’effectuer des opérateurs avec une priorité inférieure.
Description de la priorité des opérateurs
La liste suivante présente les opérateurs par ordre de priorité décroissant. Les opérateurs contenus dans la même ligne ont une priorité équivalente et sont évalués de gauche à droite sauf contrainte due à la présence de parenthèses :
IS
:
^
/, *
+, -
<>, >=, =, <=, >, <
NOT
AND
XOR
OR
Pour plus d’informations sur les opérateurs dans MDX, consultez Référence des opérateurs MDX (MDX).
Détermination de résultats
Lorsque vous combinez des expressions simples pour constituer une expression complexe, les règles des opérateurs combinées à celles de priorité des types de données déterminent le type de données de la valeur obtenue.
Si le résultat est un caractère ou une valeur Unicode, les règles des opérateurs combinées à celles de la priorité de classement déterminent le classement du résultat. Pour plus d’informations sur les classements, consultez Langues et classements (Analysis Services).
Il existe également des règles pour déterminer la précision, l’échelle et la longueur du résultat basées sur la précision, l’échelle et la longueur des expressions simples.
Conversion des types de données
La syntaxe MDX convertit un objet en un autre type lorsqu'il est utilisé dans une expression qui exige un type différent. Le tableau suivant définit les règles de conversion de chaque objet.
Type d'origine | Type exigé | Conversion |
---|---|---|
Level | Définissez | <level.members> |
Hierarchy | Membre | <hierarchy.defaultmember> |
Membre | Tuple | (<Membre>) |
Tuple | Membre | <tuple.item>(0) |
Tuple | Scalaire | <tuple.value> |
Voir aussi
Référence des opérateurs MDX (MDX)
Éléments de la syntaxe MDX (MDX)