Partage via


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)