Événements
31 mars, 23 h - 2 avr., 23 h
L’événement de la communauté Microsoft Fabric, Power BI, SQL et AI ultime. 31 mars au 2 avril 2025.
Inscrivez-vous aujourd’huiCe navigateur n’est plus pris en charge.
Effectuez une mise à niveau vers Microsoft Edge pour tirer parti des dernières fonctionnalités, des mises à jour de sécurité et du support technique.
Les clients de création de rapports comme Power BI et Excel exécutent des requêtes DAX chaque fois qu’un champ est placé sur un rapport ou qu’un filtre est appliqué. En utilisant SQL Server Management Studio (SSMS), Power BI Report Builder et des outils open source comme DAX Studio, vous pouvez créer et exécuter vos propres requêtes DAX. Les requêtes DAX retournent des résultats sous forme de table directement dans l’outil, ce qui vous permet de rapidement créer des formules DAX et tester leurs performances.
Avant de découvrir les requêtes, il est important de bien comprendre les bases de DAX. Si vous ne l’avez pas encore fait, n’hésitez pas à consulter Vue d’ensemble de DAX.
Les requêtes DAX ont une syntaxe simple composée d’un seul mot clé obligatoire, EVALUATE, et de plusieurs mots clés facultatifs : ORDER BY, START AT, DEFINE, MEASURE, VAR, TABLE et COLUMN. Chaque mot clé définit une instruction utilisée pour la durée de la requête.
Au niveau le plus basique, une requête DAX est une instruction EVALUATE contenant une expression de table. Au moins une instruction EVALUATE est obligatoire, mais une requête peut contenir n’importe quel nombre d’instructions EVALUATE.
EVALUATE <table>
Terme | Définition |
---|---|
tableau | Expression de table. |
EVALUATE
'Internet Sales'
Retourne toutes les lignes et colonnes de la table Internet Sales sous la forme d’une table.
Le mot clé facultatif ORDER BY définit une ou plusieurs expressions utilisées pour trier les résultats d’une requête. Toute expression qui peut être évaluée pour chaque ligne du résultat est valide.
EVALUATE <table>
[ORDER BY {<expression> [{ASC | DESC}]}[, …]]
Terme | Définition |
---|---|
expression | Toute expression DAX qui retourne une valeur scalaire unique. |
ASC | Ordre de tri croissant (par défaut). |
DESC | Ordre de tri décroissant. |
EVALUATE
'Internet Sales'
ORDER BY
'Internet Sales'[Order Date]
Retourne toutes les lignes et colonnes de la table Internet Sales, dans l’ordre croissant du champ Order Date, sous forme de table.
Le mot clé facultatif START AT est utilisé dans une clause ORDER BY. Il définit la valeur à laquelle commencent les résultats de la requête.
EVALUATE <table>
[ORDER BY {<expression> [{ASC | DESC}]}[, …]
[START AT {<value>|<parameter>} [, …]]]
Terme | Définition |
---|---|
valeur | Valeur constante. Il ne peut pas s’agir d’une expression. |
parameter | Nom d’un paramètre dans une instruction XMLA précédé du caractère @ . |
Les arguments de START AT ont des correspondances uniques avec les colonnes de la clause ORDER BY. La clause START AT peut inclure autant d’arguments qu’il en existe 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 dans les lignes correspondant à la première valeur de la colonne 1.
EVALUATE
'Internet Sales'
ORDER BY
'Internet Sales'[Sales Order Number]
START AT "SO7000"
Retourne toutes les lignes et colonnes de la table Internet Sales, par ordre croissant du champ Sales Order Number, sous forme de table, en commençant par SO7000.
Le mot clé DEFINE facultatif introduit une ou plusieurs définitions d’entité calculées qui existent uniquement pendant la durée de la requête. Les définitions précèdent l’instruction EVALUATE et sont valides pour toutes les instructions EVALUATE de la requête. Les définitions peuvent être des variables, des mesures, des tables1 et des colonnes1. Les définitions peuvent référencer d’autres définitions qui apparaissent avant ou après la définition actuelle. Au moins une définition est obligatoire si le mot clé DEFINE est compris dans une requête.
[DEFINE
(
(MEASURE <table name>[<measure name>] = <scalar expression>) |
(VAR <var name> = <table or scalar expression>) |
(TABLE <table name> = <table expression>) |
(COLUMN <table name>[<column name>] = <scalar expression>) |
) +
]
(EVALUATE <table expression>) +
Terme | Définition |
---|---|
Entité | MEASURE, VAR, TABLE1 ou COLUMN1. |
name | Nom d’une définition de mesure, variable, table ou colonne. Il ne peut pas s’agir d’une expression. Le nom n’a pas besoin d’être unique. Le nom existe seulement pour la durée de la requête. |
expression | Toute expression DAX qui retourne une table ou une valeur scalaire. L’expression peut utiliser n’importe quelle entité définie. Si vous devez convertir une expression scalaire en expression de table, wrappez l’expression dans un constructeur de table avec des accolades {} ou utilisez la fonction ROW() pour retourner une seule table de lignes. |
[1]Attention : Les définitions de TABLE et COLUMN limitées aux requêtes sont destinées à une utilisation interne uniquement. Même si vous pouvez définir des expressions TABLE et COLUMN pour une requête sans erreur de syntaxe, elles peuvent produire des erreurs d’exécution et ne sont pas recommandées.
Une requête DAX peut avoir plusieurs instructions EVALUATE, mais seulement une instruction DEFINE. Les définitions de l’instruction DEFINE peuvent s’appliquer à toutes les instructions EVALUATE de la requête.
Au moins une définition est obligatoire dans une instruction DEFINE.
Les définitions de mesure d’une requête remplacent les mesures du modèle du même nom, mais sont uniquement utilisées dans la requête. Elles n’affectent pas la mesure du modèle.
Les noms de VAR ont des restrictions uniques. Pour en savoir plus, consultez VAR - Paramètres.
DEFINE
MEASURE 'Internet Sales'[Internet Total Sales] =
SUM ( 'Internet Sales'[Sales Amount] )
EVALUATE
SUMMARIZECOLUMNS (
'Date'[Calendar Year],
TREATAS (
{
2013,
2014
},
'Date'[Calendar Year]
),
"Total Sales", [Internet Total Sales],
"Combined Years Total Sales",
CALCULATE (
[Internet Total Sales],
ALLSELECTED ( 'Date'[Calendar Year] )
)
)
ORDER BY [Calendar Year]
Retourne les ventes totales calculées pour les années 2013 et 2014 ainsi que les ventes totales calculées combinées pour les années 2013 et 2014 sous la forme d’une table. La mesure Internet Total Sales dans l’instruction DEFINE est utilisée dans les expressions Total Sales et Combined Years Total Sales.
Vous pouvez paramétrer une instruction de requête DAX correctement définie et la réutiliser à volonté en apportant simplement quelques modifications aux valeurs de paramètre.
La méthode Execute (XMLA) inclut un élément de collection Parameters (XMLA) qui permet de définir des paramètres et de leur affecter une valeur. Dans la collection, chaque élément Parameter (XMLA) définit le nom du paramètre et sa valeur.
Référencez les paramètres XMLA en faisant précéder leur nom du caractère @
. N’importe où dans la syntaxe où une valeur est autorisée, la valeur peut être remplacée par un appel de paramètre. Tous les paramètres XMLA sont tapés sous forme de texte.
Important
Les paramètres définis dans la section de paramètres et qui ne sont pas utilisés dans l’élément <STATEMENT> génèrent une réponse d’erreur en XMLA. Les paramètres utilisés et non définis dans l’élément <Parameters> génèrent une réponse d’erreur en XMLA.
Événements
31 mars, 23 h - 2 avr., 23 h
L’événement de la communauté Microsoft Fabric, Power BI, SQL et AI ultime. 31 mars au 2 avril 2025.
Inscrivez-vous aujourd’huiEntrainement
Parcours d’apprentissage
Utiliser DAX dans Power BI Desktop - Training
Ce parcours d'apprentissage introduit Data Analysis Expressions (DAX) et vous fournit les compétences de base nécessaires pour améliorer les modèles sémantiques à l'aide de calculs. Il commence par décrire la structure du modèle Power BI Desktop et comment il peut être amélioré par des calculs DAX. Il explique ensuite comment écrire des formules DAX et les différents types de calculs de modèles, notamment les tableaux et colonnes calculés, ainsi que les mesures. Les contextes d'évaluation sont présentés, et
Certification
Microsoft Certified: Power BI Data Analyst Associate - Certifications
Démontrez des méthodes et les meilleures pratiques qui s’alignent sur les exigences métier et techniques pour la modélisation, la visualisation et l’analyse des données avec Microsoft Power BI.