Créer des colonnes calculéesCreate calculated columns

S’applique à : SQL Server 2019 et versions ultérieures Analysis Services Azure Analysis Services Power bi Premium

Dans le cadre de cette leçon, vous créez des données dans votre modèle en ajoutant des colonnes calculées.In this lesson, you create data in your model by adding calculated columns. Vous pouvez créer des colonnes calculées (en tant que colonnes personnalisées) lors de l’utilisation de l’éditeur de modèle, à l’aide de l’éditeur de Power Query, ou ultérieurement dans le concepteur de modèles comme dans cette leçon.You can create calculated columns (as custom columns) when using Get Data, by using the Power Query Editor, or later in the model designer like you do in this lesson. Pour en savoir plus, consultez Colonnes calculées.To learn more, see Calculated columns.

Vous créez cinq colonnes calculées dans trois tables différentes.You create five new calculated columns in three different tables. La procédure diffère légèrement pour chacune des tâches, de façon à montrer qu’il existe plusieurs façons de créer des colonnes, de les renommer et de les placer à différents emplacements d’une table.The steps are slightly different for each task showing there are several ways to create columns, rename them, and place them in various locations in a table.

Cette leçon vous permet également d’utiliser pour la première fois le langage DAX (Data Analysis Expressions).This lesson is also where you first use Data Analysis Expressions (DAX). DAX est un langage spécial permettant de créer des expressions de formule hautement personnalisables pour les modèles tabulaires.DAX is a special language for creating highly customizable formula expressions for tabular models. Dans le cadre de ce didacticiel, vous utilisez DAX pour créer des colonnes calculées, des mesures et des filtres de rôle.In this tutorial, you use DAX to create calculated columns, measures, and role filters. Pour en savoir plus, consultez DAX dans les modèles tabulaires.To learn more, see DAX in tabular models.

Durée estimée pour suivre cette leçon : 15 minutesEstimated time to complete this lesson: 15 minutes

PrérequisPrerequisites

Cet article fait partie d’un didacticiel de modélisation tabulaire, qui doit être suivi dans l’ordre prévu.This article is part of a tabular modeling tutorial, which should be completed in order. Avant d’effectuer les tâches de cette leçon, vous devez avoir suivi la leçon précédente : Leçon 4 : Créer des relations.Before performing the tasks in this lesson, you should have completed the previous lesson: Lesson 4: Create relationships.

Créer des colonnes calculéesCreate calculated columns

Créer une colonne calculée MonthCalendar dans la table DimDateCreate a MonthCalendar calculated column in the DimDate table

  1. Cliquez sur Extensions > modèle modèle > vue > données.Click Extensions > Model > Model View > Data View.

    Les colonnes calculées ne peuvent être créées qu'à l'aide du concepteur de modèles dans la vue de données.Calculated columns can only be created by using the model designer in Data View.

  2. Dans le Concepteur de modèles, cliquez sur la table DimDate (onglet).In the model designer, click the DimDate table (tab).

  3. Cliquez avec le bouton droit sur l’en-tête de colonne CalendarQuarter, puis cliquez sur Insérer une colonne.Right-click the CalendarQuarter column header, and then click Insert Column.

    Une nouvelle colonne nommée Calculated Column 1 est insérée à gauche de la colonne Calendar Quarter .A new column named Calculated Column 1 is inserted to the left of the Calendar Quarter column.

  4. Dans la barre de formule située au-dessus de la table, tapez la formule DAX suivante : la saisie semi-automatique vous permet de taper les noms complets des colonnes et des tables, et répertorie les fonctions disponibles.In the formula bar above the table, type the following DAX formula: Auto-Complete helps you type the fully qualified names of columns and tables, and lists the functions that are available.

    =RIGHT(" " & FORMAT([MonthNumberOfYear],"#0"), 2) & " - " & [EnglishMonthName]  
    

    Les valeurs remplissent alors toutes les lignes de la colonne calculée.Values are then populated for all the rows in the calculated column. Si vous faites défiler la table vers le bas, vous remarquez que les lignes peuvent avoir des valeurs différentes pour cette colonne, en fonction des données figurant dans chaque ligne.If you scroll down through the table, you see rows can have different values for this column, based on the data in each row.

  5. Renommez cette colonne MonthCalendar.Rename this column to MonthCalendar.

    Capture d’écran du concepteur de modèles avec la colonne renommée en MonthCalendar.

La colonne calculée MonthCalendar fournit un nom triable pour le mois.The MonthCalendar calculated column provides a sortable name for Month.

Créer une colonne calculée DayOfWeek dans la table DimDateCreate a DayOfWeek calculated column in the DimDate table

  1. Avec la table DimDate toujours active, cliquez sur Extensions > colonne > Ajouter une colonne.With the DimDate table still active, click Extensions > Column > Add Column.

  2. Dans la barre de formule, tapez la formule suivante :In the formula bar, type the following formula:

    =RIGHT(" " & FORMAT([DayNumberOfWeek],"#0"), 2) & " - " & [EnglishDayNameOfWeek]  
    

    Quand vous avez terminé de générer la formule, appuyez sur Entrée.When you've finished building the formula, press ENTER. La nouvelle colonne est ajoutée à droite de la table.The new column is added to the far right of the table.

  3. Renommez la colonne en DayOfWeek.Rename the column to DayOfWeek.

  4. Cliquez sur l’en-tête de colonne, puis faites glisser la colonne entre la colonne EnglishDayNameOfWeek et la colonne DayNumberOfMonth.Click the column heading, and then drag the column between the EnglishDayNameOfWeek column and the DayNumberOfMonth column.

    Conseil

    Déplacer les colonnes dans la table facilite la navigation.Moving columns in your table makes it easier to navigate.

La colonne calculée DayOfWeek fournit un nom triable pour le jour de la semaine.The DayOfWeek calculated column provides a sortable name for the day of week.

Créer une colonne calculée ProductSubcategoryName dans la table DimProductCreate a ProductSubcategoryName calculated column in the DimProduct table

  1. Dans la table DimProduct, faites défiler l’affichage jusqu’à l’extrême droite de la table.In the DimProduct table, scroll to the far right of the table. Notez que la colonne la plus à droite est nommée Add Column (ajouter une colonne), puis cliquez sur l’en-tête de colonne pour l’activer.Notice the right-most column is named Add Column, click the column heading to make it active.

  2. Dans la barre de formule, tapez la formule suivante :In the formula bar, type the following formula:

    =RELATED('DimProductSubcategory'[EnglishProductSubcategoryName])  
    
  3. Renommez la colonne en ProductSubcategoryName.Rename the column to ProductSubcategoryName.

La colonne calculée ProductSubcategoryName est utilisée pour créer une hiérarchie dans la table DimProduct, qui inclut les données de la colonne EnglishProductSubcategoryName de la table DimProductSubcategory.The ProductSubcategoryName calculated column is used to create a hierarchy in the DimProduct table, which includes data from the EnglishProductSubcategoryName column in the DimProductSubcategory table. Les hiérarchies ne peuvent pas couvrir plusieurs tables.Hierarchies cannot span more than one table. Vous créerez des hiérarchies ultérieurement, dans le cadre de la Leçon 9.You create hierarchies later in Lesson 9.

Créer une colonne calculée ProductCategoryName dans la table DimProductCreate a ProductCategoryName calculated column in the DimProduct table

  1. Avec la table DimProduct toujours active, ajoutez une nouvelle colonne.With the DimProduct table still active, add a new column.

  2. Dans la barre de formule, tapez la formule suivante :In the formula bar, type the following formula:

    =RELATED('DimProductCategory'[EnglishProductCategoryName]) 
    
  3. Renommez la colonne en ProductCategoryName.Rename the column to ProductCategoryName.

La colonne calculée ProductCategoryName est utilisée pour créer une hiérarchie dans la table DimProduct, qui inclut les données de la colonne EnglishProductCategoryName de la table DimProductCategory.The ProductCategoryName calculated column is used to create a hierarchy in the DimProduct table, which includes data from the EnglishProductCategoryName column in the DimProductCategory table. Les hiérarchies ne peuvent pas couvrir plusieurs tables.Hierarchies cannot span more than one table.

Créer une colonne calculée Margin dans la table FactInternetSalesCreate a Margin calculated column in the FactInternetSales table

  1. Dans le Concepteur de modèles, sélectionnez la table FactInternetSales.In the model designer, select the FactInternetSales table.

  2. Créez une colonne calculée entre la colonne SalesAmount et la colonne TaxAmt.Create a new calculated column between the SalesAmount column and the TaxAmt column.

  3. Dans la barre de formule, tapez la formule suivante :In the formula bar, type the following formula:

    =[SalesAmount]-[TotalProductCost]
    
  4. Renommez la colonne en Margin.Rename the column to Margin.

    Capture d’écran du générateur de modèles avec la colonne Margin appelée out.

    La colonne calculée Margin est utilisée pour analyser les marges pour chaque vente.The Margin calculated column is used to analyze profit margins for each sale.

Étape suivanteNext step

Leçon 6 : Créer des mesuresLesson 6: Create measures