Référence syntaxique des requêtes DAX
Les requêtes DAX permettent à l'utilisateur de récupérer des données définies par une expression de table à partir du moteur d'analyse en mémoire xVelocity (VertiPaq). L'utilisateur peut créer des mesures dans le cadre de la requête ; ces mesures existent uniquement pendant la durée de la requête.
Syntaxe
[DEFINE { MEASURE <tableName>[<name>] = <expression> }
EVALUATE <table>
[ORDER BY {<expression> [{ASC | DESC}]}[, …]
[START AT {<value>|<parameter>} [, …]]]
Paramètres
Clause DEFINE
Clause facultative de l'instruction de requête qui permet à l'utilisateur de définir des mesures pour la durée de la requête. Les définitions peuvent référencer d'autres définitions qui apparaissent avant ou après la définition actuelle.tableName
Nom d'une table existante dans la syntaxe DAX standard. Il ne peut pas s'agir d'une expression.name
Nom d'une nouvelle mesure. Il ne peut pas s'agir d'une expression.expression
Toute expression DAX qui retourne une valeur scalaire unique.Clause EVALUATE
Contient l'expression de table qui génère les résultats de la requête. L'expression peut utiliser l'une des mesures définies.L'expression doit retourner une table. Si une valeur scalaire est requise, la personne qui crée la mesure peut encapsuler la valeur scalaire dans une fonction ROW() pour créer une table qui contient la valeur scalaire requise.
Clause ORDER BY
Clause facultative qui définit les expressions utilisées pour trier les résultats de la requête. Toute expression qui peut être évaluée pour chaque ligne du résultat est valide.Sous-clause START AT
Clause facultative, à l'intérieur d'une clause ORDER BY, qui définit les valeurs de départ des résultats de la requête. La clause START AT fait partie de la clause ORDER BY et ne peut pas être utilisée en dehors de cette dernière.Dans un jeu ordonné de résultats, la clause START AT définit la ligne initiale du jeu de résultats.
Les arguments de la clause START AT ont une correspondance de type un-à-un avec les colonnes de la clause ORDER BY ; il peut y avoir autant d'arguments dans la clause START AT que dans la clause ORDER BY, mais pas plus. Le premier argument de la clause START AT définit la valeur de départ de la colonne 1 des colonnes ORDER BY. Le deuxième argument de la clause START AT définit la valeur de départ de la colonne 2 des colonnes ORDER BY, au sein des lignes qui correspondent à la première valeur pour la colonne 1.
value
Valeur constante ; il ne peut pas s'agir d'une expression.parameter
Nom d'un paramètre dans l'instruction XMLA précédée d'un caractère @. Pour plus d'informations, consultez Paramètres des requêtes DAX.
Valeur de retour
Table de données.
Exemples de code
Pour obtenir des exemples d'utilisation des requêtes DAX, consultez ce site.