レッスン 5: 計算列の作成

適用対象:SQL Server 2016 以降の Analysis Services Azure Analysis Services Power BI Premium

このレッスンでは、計算列を追加して、モデル内に新しいデータを作成します。 計算列は、モデル内の既存のデータに基づいて機能します。 詳細については、「 計算列」を参照してください。

3 つのテーブルに 5 つの計算列を新しく作成します。 手順は実習ごとに少しずつ異なります。 これは、新しい列を作成したり、それらの名前を変更したり、それらをテーブル内のさまざまな場所へ配置するのには、いくつかの方法があることを示すためです。

このレッスンの推定所要時間: 15 分

前提条件

このトピックは、表形式モデルのチュートリアルの一部であり、チュートリアルでの順番に従って実行する必要があります。 このレッスンのタスクを実行する前に、前のレッスン「 レッスン 4: リレーションシップの作成」を完了しておく必要があります。

計算列を作成する

DimDate テーブルに MonthCalendar 計算列を作成する

  1. [モデル] メニューの [モデル ビュー>データ ビュー] を>クリックします。

    計算列は、モデル デザイナーのデータ ビューでのみ作成できます。

  2. モデル デザイナーで DimDate テーブル (タブ) をクリックします。

  3. CalendarQuarter 列ヘッダーを右クリックして、[Insert Column] をクリックします。

    Calculated Column 1 という新しい列が、 Calendar Quarter 列の左側に挿入されます。

  4. テーブルの上にある数式バーに、以下の数式を入力します。 AutoComplete は列やテーブルの完全修飾名を入力するのに役立つとともに、使用可能な関数をすべて一覧表示します。

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

    計算列のすべての行に値が入力されます。 テーブルを下方向にスクロールすると、この列の各行のデータに基づいて、行にさまざまな値が設定さていることが分かります。

  5. 列名を MonthCalendar に変更します。

    Screenshot of the model designer with the column renamed to MonthCalendar.

MonthCalendar 計算列は、月の名前で並べ替えが可能な列です。

DimDate テーブルに DayOfWeek 計算列を作成する

  1. DimDate テーブルがアクティブなままの状態で、[列] メニューをクリックし、[Add Column] をクリックします。

  2. 数式バーに次の式を入力します。

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

    式の入力を終えたら、Enter キーを押します。 新しい列がテーブルの右端に追加されます。

  3. 列名を DayOfWeek に変更します。

  4. 列の見出しをクリックし、EnglishDayNameOfWeek 列と DayNumberOfMonth 列の間に列をドラッグします。

    ヒント

    テーブル内の列を移動することで、列が参照しやすくなります。

DayOfWeek 計算列は、曜日の名前で並べ替えが可能な列です。

DimProduct テーブルに ProductSubcategoryName 列を作成する

  1. DimProduct テーブルの右端までスクロールします。 右端の列名が Add Column (斜体) になっています。この列の見出しをクリックします。

  2. 数式バーに次の式を入力します。

    =RELATED('DimProductSubcategory'[EnglishProductSubcategoryName])  
    
  3. 列名を ProductSubcategoryName に変更します。

ProductSubcategoryName 計算列は、DimProduct テーブルに階層を作成するのに使用されます。この列には、DimProductSubcategory テーブルのEnglishProductSubcategoryName 列からデータが取り込まれます。 階層が複数のテーブルにまたがることはできません。 階層は、後ほどレッスン 9 で作成します。

DimProduct テーブルに ProductCategoryName 計算列を作成する

  1. DimProduct テーブルがアクティブなままの状態で、[列] メニューをクリックし、[Add Column] をクリックします。

  2. 数式バーに次の式を入力します。

    =RELATED('DimProductCategory'[EnglishProductCategoryName]) 
    
  3. 列名を ProductCategoryName に変更します。

ProductCategoryName 計算列は、DimProduct テーブルに階層を作成するのに使用されます。この列には、DimProductCategory テーブルのEnglishProductCategoryName 列からデータが取り込まれます。 階層が複数のテーブルにまたがることはできません。

FactInternetSales テーブルに Margin 計算列を作成する

  1. モデル デザイナーで FactInternetSales テーブルを選択します。

  2. 新しい列を追加します。

  3. 数式バーに次の式を入力します。

    =[SalesAmount]-[TotalProductCost]
    
  4. 列の名前を Marginに変更します。

  5. SalesAmount 列と TaxAmt 列の間で列をドラッグします。

    Screenshot of the model designer with the Margin column called out.

    Margin 計算列は販売ごとの利幅の分析に使用されます。

次の内容

次のレッスン「 レッスン 6: メジャーの作成」に進みます。