テーブル間のリレーションシップの作成 (チュートリアル)

このレッスンでは、PowerPivot を使用して、さまざまなデータ ソースからのデータ間のリレーションシップを表示および作成します。 リレーションシップとは、2 つのデータ テーブルの間の接続であり、これにより、2 つのテーブルのデータの関連付けの方法が決まります。 たとえば、DimProduct テーブルと DimProductSubcategory テーブルには、各製品が特定のサブカテゴリに属しているということに基づくリレーションシップがあります。 リレーションシップの詳細については、「リレーションシップの概要」を参照してください。

PowerPivot でリレーションシップを作成するには、PowerPivot ウィンドウのテーブルまたはダイアグラム ビューの列を手動で結合する方法と、データを PowerPivot ブックにインポートするときに PowerPivot for Excel が既存のリレーションシップを検出した場合に自動的に結合する方法があります。 リレーションシップを作成するには、類似データまたは同一データが格納されている異なるテーブルの列を手動で結合します。 たとえば、DimProduct テーブルと DimProductSubcategory テーブルは、両方のテーブルに存在する ProductSubcategoryKey 列によって関連付けられています。 これらの列の名前は同じである必要はありませんが、多くの場合は同じ名前です。

必要条件

このトピックは PowerPivot for Excel チュートリアルの一部であり、チュートリアルでの順番に従って実行する必要があります。 前提条件およびチュートリアルでの最初の手順については、「PowerPivot for Excel チュートリアルの概要」を参照してください。

リレーションシップを作成する理由

有意義な分析を行うには、データ ソース間にリレーションシップがある必要があります。 具体的には、リレーションシップにより、次のことが可能になります。

  • あるテーブルのデータを関連テーブルのデータの列でフィルター処理する。

  • 複数のテーブルの列を 1 つのピボットテーブルまたはピボットグラフに統合する。

  • Data Analysis Expressions (DAX) の数式を使用して、関連テーブル内の値を簡単に参照する。

既存のリレーションシップの確認

3 つの異なるソースのデータが、既に PowerPivot ブックにあります。

  • 売上と製品のデータ。これは、Access データベースからインポートしたデータです。 このデータと共に既存のリレーションシップも自動的にインポートされています。

  • 製品カテゴリ データ。これは、Access データベースからインポートしたデータです。

  • Excel スプレッドシートからコピーし、このスプレッドシートにリンクされているデータ。このスプレッドシートには、ストア情報が含まれています。

既存のリレーションシップを確認するには

  1. PowerPivot ウィンドウの [デザイン] タブで、[リレーションシップ] グループにある [リレーションシップの管理] をクリックします。

  2. [リレーションシップの管理] ダイアログ ボックスに、Access データベースを最初にインポートしたときに作成された次のリレーションシップが表示されます。

    テーブル

    関連する参照テーブル

    DimProduct [ProductSubcategoryKey]

    DimProductSubcategory [ProductSubcategoryKey]

    FactSales [channelKey]

    DimChannel [ChannelKey]

    FactSales [DateKey]

    DimDate [Datekey]

    FactSales [ProductKey]

    DimProduct [ProductKey]

  3. このダイアログ ボックスでリレーションシップを作成、編集、および削除できます。 [閉じる] をクリックします。

異なるソースのデータ間の新しいリレーションシップの作成

自動的に作成されたリレーションシップを確認したので、次に、追加のリレーションシップを作成します。

最初のリレーションシップを作成するには

  1. [ストア] テーブル タブをクリックします。

  2. [GeographyKey] 列見出しを右クリックし、[リレーションシップの作成] をクリックします。

    [テーブル] ボックスと [列] ボックスは、自動的に入力されます。

  3. [関連する参照テーブル] ボックスで [地理] (Excel ワークシートから貼り付けて名前を変更したテーブル) を選択します。

  4. [関連する参照列] ボックスで [GeographyKey] が選択されていることを確認します。

  5. [作成] をクリックします。

  6. リレーションシップが作成されると、列の上部にアイコンが表示されます。 リレーションシップの詳細を表示するセルをポイントします。

Access と Excel のデータ間に複数のリレーションシップを作成するには

  1. [ストア] タブをクリックします。

  2. [StoreKey] 列をクリックします。

  3. [デザイン] タブで [リレーションシップの作成] をクリックします。

    [テーブル] ボックスと [列] ボックスは、自動的に入力されます。

  4. [関連する参照テーブル] ボックスで [FactSales] を選択します。

  5. [関連する参照列] ボックスで [StoreKey] が選択されていることを確認します。

    [関連する参照列] ボックスの隣に情報アイコンが表示されます。 このアイコンは、このリレーションシップが間違った順序で作成されていることを示します。 リレーションシップを作成する場合、[関連する参照列] について一意な値を持つ列を選択する必要があります。

  6. 順序を逆にします。 [テーブル] ボックスから [FactSales] を選択し、[列] ボックスから [StoreKey] を選択します。 [関連する参照テーブル][Stores] を指定し、[関連する参照列][StoreKey] を指定します。

  7. [作成] をクリックします。

ダイアグラム ビューのリレーションシップの作成

ダイアグラム ビューでは、異なるテーブルの列間のリレーションシップを簡単に作成できます。 リレーションシップは視覚的に表示され、すべてのテーブルの相互関係がひとめでわかります。 ここでは、ダイアグラム ビューを使用して、このチュートリアルを完了するために必要になる最後のリレーションシップを作成します。 ダイアグラム ビューの詳細については、「PowerPivot ウィンドウ: ダイアグラム ビュー」を参照してください。

ダイアグラム ビューを操作するには

  1. PowerPivot ウィンドウの [ホーム] タブで、[表示] 領域の [ダイアグラムの表示] をクリックします。 データ ビュー スプレッドシートのレイアウトがビジュアル ダイアグラムに変更され、リレーションシップに基づいてテーブルが自動的に構成されます。

  2. すべてのテーブルを画面に表示するには、ダイアグラム ビューの右上隅にある [画面に合わせる] アイコンをクリックします。

  3. 見やすいビューを構成するには、[ドラッグしてズーム] コントロールとミニマップを使用して、テーブルを目的のレイアウトにドラッグします。 スクロール バーまたはマウス ホイールを使用して画面をスクロールすることもできます。

  4. リレーションシップの線 (両端に矢印と丸印が付いた黒い線) をポイントして関連テーブルを強調表示します。

ダイアグラム ビューのテーブル間のリレーションシップを作成するには

  1. ダイアグラム ビューで DimProductSubcategory テーブル ダイアグラムを右クリックし、[リレーションシップの作成] をクリックします。 [リレーションシップの作成] ダイアログ ボックスが開きます。

  2. [列] ボックスで [ProductCategoryKey] を選択し、[関連する参照テーブル] ボックスで [ProductCategory] を選択して、[関連する参照列] ボックスで [ProductCategoryKey] を選択します。

  3. [作成] をクリックします。

  4. [デザイン] タブで [リレーションシップの管理] をクリックして一覧を表示し、すべてのリレーションシップが正常に作成されたことを確認します。

次の手順

このチュートリアルを続行するには、次のトピック「計算列の作成 (チュートリアル)」に進んでください。

関連項目

概念

Data Analysis Expressions (DAX) の概要

PowerPivot ウィンドウ: ダイアグラム ビュー

その他の技術情報

テーブル間のリレーションシップ