Fonctions DAX - Guide rapide

DAX signifie Dà Aanalyse Expressions. DAX est un langage de formule et est une collection de fonctions, d'opérateurs et de constantes qui peuvent être utilisées dans une formule ou une expression pour calculer et renvoyer une ou plusieurs valeurs. DAX est le langage de formule associé au modèle de données de Microsoft Excel Power Pivot et à Microsoft Power BI.

DAX n'est pas un langage de programmation, mais c'est un langage de formule qui permet aux utilisateurs de définir des calculs personnalisés dans des colonnes calculées et des champs calculés (également appelés mesures). DAX vous aide à créer de nouvelles informations à partir des données existantes dans votre modèle de données. Les formules DAX vous permettent de modéliser les données, d'analyser les données et d'utiliser les résultats pour le reporting et la prise de décision.

Pour une compréhension approfondie de DAX, reportez-vous au didacticiel - DAX dans cette bibliothèque de didacticiels.

Qu'est-ce qu'une fonction DAX?

Une fonction DAX est une fonction intégrée fournie dans le langage DAX pour vous permettre d'effectuer diverses actions sur les données des tables de votre modèle de données.

Les fonctions DAX vous permettent d'effectuer des calculs de données couramment utilisés sur le modèle de données. Certaines des fonctions DAX ont les mêmes noms et fonctionnalités que celles des fonctions Excel, mais ont été modifiées pour utiliser les types de données DAX et travailler avec des tables et des colonnes, comme indiqué dans la section suivante. DAX possède des fonctions supplémentaires conçues pour fonctionner avec des données relationnelles et effectuer une agrégation dynamique.

Les fonctions DAX jouent un rôle important dans l'utilisation de DAX pour la modélisation des données et la création de rapports.

Fonctions Excel et fonctions DAX

Il existe certaines similitudes entre les fonctions Excel et les fonctions DAX et il existe également certaines différences. Voici les similitudes et les différences entre les fonctions Excel et les fonctions DAX -

Similitudes entre les fonctions Excel et les fonctions DAX

  • Certaines fonctions DAX ont le même nom et le même comportement général que les fonctions Excel.

  • DAX a des fonctions de recherche similaires aux fonctions de recherche de tableau et de vecteur dans Excel.

Différences entre les fonctions Excel et les fonctions DAX

  • Les fonctions DAX ont été modifiées pour accepter différents types d'entrées et certaines des fonctions DAX peuvent renvoyer un type de données différent. Par conséquent, vous devez comprendre l'utilisation de ces fonctions séparément bien qu'elles portent le même nom.

  • Vous ne pouvez pas utiliser des fonctions DAX dans une formule Excel ou utiliser des fonctions Excel dans une formule DAX, sans les modifications requises.

  • Les fonctions Excel prennent une référence de cellule ou une plage de cellules comme référence. Les fonctions DAX ne prennent jamais une référence de cellule ou une plage de cellules comme référence, mais prennent à la place une colonne ou un tableau comme référence.

  • Les fonctions de date et d'heure Excel renvoient un entier qui représente une date sous forme de numéro de série. Les fonctions de date et d'heure DAX renvoient un type de données datetime qui se trouve dans DAX mais pas dans Excel.

  • Excel n'a pas de fonctions qui renvoient un tableau, mais certaines fonctions peuvent fonctionner avec des tableaux. De nombreuses fonctions DAX peuvent facilement référencer des tables et des colonnes complètes pour effectuer des calculs et renvoyer une table ou une colonne de valeurs. Cette capacité de DAX ajoute de la puissance à Power Pivot, Power View et Power BI, où DAX est utilisé.

  • Les fonctions de recherche DAX nécessitent qu'une relation soit établie entre les tables respectives.

Conventions de dénomination des paramètres DAX

DAX a des noms de paramètres standard pour faciliter l'utilisation et la compréhension des fonctions DAX. De plus, vous pouvez utiliser certains préfixes pour les noms de paramètres. Si le préfixe est suffisamment clair, vous pouvez utiliser le préfixe lui-même comme nom de paramètre.

Vous devez comprendre les conventions de dénomination des paramètres DAX afin de comprendre la syntaxe des fonctions DAX et d'utiliser correctement les valeurs des paramètres requis.

Reportez-vous au chapitre - Conventions de dénomination des paramètres DAX pour plus de détails.

Types de fonctions DAX

DAX prend en charge les types de fonctions suivants.

  • Fonctions de table DAX
    • Fonctions de filtre DAX
    • Fonctions d'agrégation DAX
    • Fonctions DAX Time Intelligence
  • Fonctions de date et d'heure DAX
  • Fonctions d'informations DAX
  • Fonctions logiques DAX
  • Fonctions mathématiques et de déclenchement DAX
  • Autres fonctions DAX
  • Fonctions parent et enfant DAX
  • Fonctions statistiques DAX
  • Fonctions de texte DAX
  • Fonctions de structure de description DAX

Fonctions de table DAX

De nombreuses fonctions DAX prennent des tables comme tables d'entrée ou de sortie ou font les deux. Ces fonctions DAX sont appelées fonctions table DAX. Étant donné qu'une table peut avoir une seule colonne, les fonctions table DAX prennent également des colonnes uniques comme entrées. Vous disposez des types suivants de fonctions table DAX -

  • Fonctions d'agrégation DAX
  • Fonctions de filtre DAX
  • Fonctions DAX Time Intelligence

Fonctions d'agrégation DAX

Les fonctions d'agrégation DAX agrègent toute expression sur les lignes d'une table et sont utiles dans les calculs.

Reportez-vous au chapitre - Fonctions d'agrégation DAX pour plus de détails.

Fonctions de filtre DAX

Les fonctions de filtre DAX renvoient une colonne ou une table ou des valeurs liées à la ligne actuelle. Vous pouvez utiliser les fonctions de filtre DAX pour renvoyer des types de données spécifiques, rechercher des valeurs dans des tables associées et filtrer par valeurs associées. Les fonctions de recherche DAX fonctionnent en utilisant des tables et des relations entre elles. Les fonctions de filtre DAX vous permettent de manipuler le contexte des données pour créer des calculs dynamiques.

Reportez-vous au chapitre - Fonctions de filtre DAX pour plus de détails.

Fonctions DAX Time Intelligence

Les fonctions DAX Time Intelligence renvoient une table de dates ou utilisent une table de dates pour calculer une agrégation. Ces fonctions DAX vous aident à créer des calculs qui prennent en charge les besoins de l'analyse de Business Intelligence en vous permettant de manipuler des données à l'aide de périodes de temps, y compris les jours, les mois, les trimestres et les années.

Reportez-vous au chapitre - Fonctions DAX Time Intelligence pour plus de détails.

Fonctions de date et d'heure DAX

Les fonctions de date et d'heure DAX sont similaires aux fonctions de date et d'heure d'Excel. Cependant, les fonctions de date et d'heure DAX sont basées sur le type de données datetime de DAX.

Reportez-vous au chapitre - Fonctions de date et d'heure DAX pour plus de détails.

Fonctions d'informations DAX

Les fonctions d'informations DAX examinent la cellule ou la ligne fournie en tant qu'argument et vous indiquent si la valeur correspond au type attendu.

Reportez-vous au chapitre - Fonctions d'informations DAX pour plus de détails.

Fonctions logiques DAX

Les fonctions logiques DAX renvoient des informations sur les valeurs d'une expression. Par exemple, la fonction DAX TRUE vous permet de savoir si une expression que vous évaluez renvoie une valeur TRUE.

Reportez-vous au chapitre - Fonctions logiques DAX pour plus de détails.

Fonctions mathématiques et de déclenchement DAX

Les fonctions mathématiques et trigonométriques DAX sont très similaires aux fonctions mathématiques et trigonométriques d'Excel.

Reportez-vous au chapitre - Fonctions DAX Math et Trig pour plus de détails.

Fonctions parent et enfant DAX

Les fonctions parent et enfant DAX sont utiles pour gérer les données présentées sous forme de hiérarchie parent / enfant dans le modèle de données.

Reportez-vous au chapitre - Fonctions DAX Parent et Child pour plus de détails.

Fonctions statistiques DAX

Les fonctions statistiques DAX sont très similaires aux fonctions statistiques Excel.

Reportez-vous au chapitre - Fonctions statistiques DAX pour plus de détails.

Fonctions de texte DAX

Les fonctions de texte DAX fonctionnent avec les tables et les colonnes. Avec les fonctions de texte DAX, vous pouvez renvoyer une partie d'une chaîne, rechercher du texte dans une chaîne ou concaténer des valeurs de chaîne. Vous pouvez également contrôler les formats des dates, des heures et des nombres.

Reportez-vous au chapitre - Fonctions DAX Text pour plus de détails.

Autres fonctions DAX

Ces fonctions DAX exécutent des actions uniques qui ne peuvent être définies par aucune des catégories auxquelles appartiennent la plupart des autres fonctions.

Reportez-vous au chapitre - Autres fonctions DAX pour plus de détails.

Structure de description des fonctions DAX

Si vous devez utiliser une fonction DAX dans une formule DAX, vous devez comprendre la fonction en détail. Vous devez connaître la syntaxe de la fonction, les types de paramètres, ce que la fonction renvoie, etc.

Dans ce didacticiel, une structure de description de fonction commune est utilisée pour toutes les fonctions DAX afin que vous puissiez lire et interpréter les fonctions DAX efficacement.

Reportez-vous au chapitre - Structure de description des fonctions DAX pour plus de détails.

DAX a des noms de paramètres standard pour faciliter l'utilisation et la compréhension des fonctions DAX. De plus, vous pouvez utiliser certains préfixes pour les noms de paramètres. Si le préfixe est suffisamment clair, vous pouvez utiliser le préfixe lui-même comme nom de paramètre.

Pour comprendre la syntaxe des fonctions DAX et utiliser les valeurs de données de manière appropriée pour les paramètres de fonction DAX pertinents, vous devez comprendre les conventions de dénomination des paramètres DAX.

Noms des paramètres

Voici les noms des paramètres standard DAX -

N ° Sr. Nom et description du paramètre
1

expression

Toute expression DAX qui renvoie une seule valeur scalaire, où l'expression doit être évaluée plusieurs fois (pour chaque ligne / contexte).

2

value

Toute expression DAX qui renvoie une valeur scalaire unique où l'expression doit être évaluée exactement une fois avant toutes les autres opérations.

3

table

Toute expression DAX qui renvoie une table de données.

4

tableName

Le nom d'une table existante utilisant la syntaxe DAX standard. Cela ne peut pas être une expression.

5

columnName

Le nom d'une colonne existante utilisant la syntaxe DAX standard, généralement pleinement qualifiée. Cela ne peut pas être une expression.

6

name

Une constante de chaîne qui sera utilisée pour fournir le nom d'un nouvel objet.

sept

order

Une énumération utilisée pour déterminer l'ordre de tri.

8

ties

Une énumération utilisée pour déterminer la gestion des valeurs de lien.

9

type

Énumération utilisée pour déterminer le type de données pour PathItem et PathItemReverse.

Préfixer les noms de paramètres ou utiliser le préfixe uniquement

Vous pouvez qualifier un nom de paramètre avec un préfixe -

  • Le préfixe doit être descriptif de la manière dont l'argument est utilisé.

  • Le préfixe doit être tel que la lecture ambiguë du paramètre soit évitée.

Par exemple,

  • Result_ColumnName - Fait référence à une colonne existante utilisée pour obtenir les valeurs de résultat dans la fonction DAX LOOKUPVALUE ().

  • Search_ColumnName - Fait référence à une colonne existante utilisée pour rechercher une valeur dans la fonction DAX LOOKUPVALUE ().

Vous pouvez omettre le nom du paramètre et n'utiliser que le préfixe, si le préfixe est suffisamment clair pour décrire le paramètre. Omettre le nom du paramètre et utiliser uniquement le préfixe peut parfois aider à éviter l'encombrement lors de la lecture.

Par exemple, considérez DATE (Year_value, Month_value, Day_value). Vous pouvez omettre le nom du paramètre - valeur, qui est répété trois fois et l'écrire comme DATE (année, mois, jour). Comme on le voit, en utilisant uniquement les préfixes, la fonction est plus lisible. Cependant, parfois, le nom du paramètre et le préfixe doivent être présents pour plus de clarté.

Par exemple, considérez Year_columnName. Le nom du paramètre est ColumnName et le préfixe est Year. Les deux sont nécessaires pour faire comprendre à l'utilisateur que le paramètre nécessite une référence à une colonne d'années existante.

Si vous devez utiliser une fonction DAX dans une formule DAX, vous devez comprendre la fonction en détail. Vous devez connaître la syntaxe de la fonction, les types de paramètres, ce que la fonction renvoie, etc.

Pour vous permettre de comprendre comment lire et interpréter les fonctions DAX, une structure de description de fonction uniforme est utilisée dans ce didacticiel.

  • Les différents types de fonctions DAX sont regroupés par le nom de type des fonctions DAX sous forme de chapitres.

  • Chacun de ces chapitres fournit une brève description de l'utilité du type respectif de fonctions DAX.

  • La brève description sera suivie de la liste des fonctions DAX correspondant à ce chapitre (Type / Catégorie des fonctions DAX).

  • Chaque nom de fonction DAX est lié par hyperlien aux détails de la fonction DAX qui ont la structure de description de fonction DAX suivante -

    • Description
    • Syntax
    • Parameters
    • Valeur de retour
    • Remarks
    • Example

Les sections suivantes expliquent chacun de ces en-têtes qui apparaissent dans chaque explication de fonction DAX.

La description

Dans la section Description, vous apprendrez à quoi sert la fonction DAX et où elle peut être utilisée.

Si la fonction DAX est introduite dans Excel 2016, la même chose sera mentionnée ici. (Le reste des fonctions DAX existe dans Excel 2013.)

Syntaxe

Dans la section Syntaxe, vous apprendrez le nom exact de la fonction et les paramètres respectifs.

  • Le nom de la fonction DAX est indiqué en lettres MAJUSCULES.

  • Le nom de la fonction DAX est suivi d'une parenthèse ouvrante.

  • Chaque paramètre suit la convention de dénomination des paramètres DAX standard et est placé entre crochets angulaires.

  • Si un paramètre est facultatif, il est en outre placé entre crochets.

  • Les paramètres sont séparés par des virgules.

  • Les ellipses… sont utilisées pour afficher un nombre optionnel de répétitions de paramètres.

  • La syntaxe de la fonction se termine par une parenthèse fermante.

Exemple

Paramètres

Dans la section Paramètres, chacun des paramètres de la fonction DAX spécifique est répertorié dans un tableau avec sa description. Par exemple, les paramètres de l'exemple de fonction DAX SELECTCOLUMNS ci-dessus sont répertoriés dans le tableau suivant.

N ° Sr. Paramètre et description
1

Table

Table ou une expression DAX qui renvoie une table.

2

Name

Le nom donné à la colonne, entre guillemets.

3

scalar_expression

Expression DAX qui renvoie une valeur scalaire telle qu'une référence de colonne, un entier ou une valeur de chaîne.

Valeur de retour

Dans la section Valeur de retour, vous découvrirez la valeur renvoyée par la fonction DAX et son type de données.

Remarques

Dans la section Notes, vous découvrirez toutes les informations supplémentaires que vous devez connaître sur l'utilisation de la fonction DAX. Vous comprendrez également les erreurs potentielles et les raisons.

Exemple

Un exemple d'utilisation de la fonction DAX est donné dans cette section.

Note - Lorsque vous écrivez des fonctions DAX avec les valeurs de données pour les paramètres, vous respectez les conventions de dénomination indiquées ci-dessous -

  • Un nom de table est spécifié tel qu'il apparaît dans le modèle de données. Par exemple, les ventes.

  • Un nom de colonne est spécifié tel qu'il apparaît dans le modèle de données avec des crochets qui l'entourent.

    Par exemple, [Montant des ventes]

    • Il est recommandé d'utiliser des noms complets pour les colonnes, c'est-à-dire qu'un nom de colonne est précédé du nom de table qui le contient.

      Par exemple, Sales [Sales Amount]

    • Si le nom de la table contient des espaces, il doit être placé entre guillemets simples.

      Par exemple, "East Sales" [Sales Amount]

  • Une fonction DAX peut renvoyer une colonne ou une table de valeurs, auquel cas, elle doit être utilisée comme paramètre d'une autre fonction DAX qui nécessite une colonne ou une table.

Les fonctions d'agrégation DAX agrègent toute expression sur les lignes d'une table et sont utiles dans les calculs.

Voici les fonctions d'agrégation DAX -

Vous pouvez utiliser les fonctions de filtre DAX pour renvoyer des types de données spécifiques, rechercher des valeurs dans des tables associées et filtrer par valeurs associées. Les fonctions de recherche fonctionnent en utilisant des tables et des relations entre elles. Les fonctions de filtrage vous permettent de manipuler le contexte des données pour créer des calculs dynamiques.

Voici les fonctions de filtre DAX

Les fonctions DAX Time Intelligence vous aident à créer des calculs qui prennent en charge les besoins de l'analyse de Business Intelligence en vous permettant de manipuler les données à l'aide de périodes de temps, y compris les jours, les mois, les trimestres et les années.

Voici les fonctions DAX Time Intelligence

Les fonctions de date et d'heure DAX sont similaires aux fonctions de date et d'heure d'Excel. Cependant, les fonctions de date et d'heure DAX sont basées sur le type de données datetime DAX.

Voici les fonctions de date et d'heure DAX -

Les fonctions d'informations DAX examinent la valeur ou la colonne fournie en tant qu'argument et vous indiquent si la valeur correspond au type attendu.

Voici les fonctions d'informations DAX -

Les fonctions logiques DAX renvoient des valeurs logiques (TRUE / FALSE) basées sur les opérations logiques effectuées sur les paramètres pertinents.

Voici les fonctions logiques DAX -

Les fonctions mathématiques et trigonométriques DAX sont très similaires aux fonctions mathématiques et trigonométriques d'Excel.

Voici les fonctions DAX Math et Trig -

Les fonctions parent et enfant DAX sont utiles pour gérer les données présentées sous forme de hiérarchie parent / enfant dans le modèle de données.

Voici les fonctions DAX Parent et Child -

Les fonctions statistiques DAX sont très similaires aux fonctions statistiques Excel.

Voici les fonctions statistiques DAX -

Les fonctions de texte DAX fonctionnent avec les tables et les colonnes. Avec les fonctions Texte DAX, vous pouvez renvoyer une partie d'une chaîne, rechercher du texte dans une chaîne ou concaténer des valeurs de chaîne. Vous pouvez également contrôler les formats des dates, des heures et des nombres.

Voici les fonctions DAX Text -

Ces fonctions DAX exécutent des actions uniques qui ne peuvent être définies par aucune des catégories auxquelles appartiennent la plupart des autres fonctions DAX.

Voici les autres fonctions DAX -