リレーションシップの作成とピボットテーブルによる検証
メニューを表示するにはスワイプしてください
4つのテーブルがデータモデルに読み込まれていても、これらは依然として独立しています。Power Pivotは自動的にそれらの接続方法を認識しません。リレーションシップが定義されていない場合、異なる2つのテーブルからフィールドをピボットテーブルで組み合わせると、誤った結果が生成されます。
1側と多側
Power Pivotにおけるすべてのリレーションシップは、正確に2つのテーブルを接続します。一方が1側、もう一方が多側として機能します。
Excelのダイアグラムビューでは、ディメンションテーブル側に1、ファクトテーブル側に*(アスタリスク)が表示されます。両者を結ぶ矢印はリレーションシップの流れの方向を示しており、常にディメンションからファクトへ向かいます。
常にディメンションテーブルからファクトテーブルへドラッグします — 一意キーから繰り返しキーへの操作です。ドラッグを開始したテーブルが「1」側となり、ドロップしたテーブルが「多」側となります。
カーディナリティの種類
「リレーションシップの管理」ダイアログでは、カーディナリティ(各側で何行一致するかの数値的な説明)も表示されます。
1*多対一 — このモデルでの標準的なパターン。Salesの複数行がCustomers、Products、Datesの1行と一致します。11一対一 — 片側の各行がもう一方の正確に1行と一致します。トランザクションモデルではまれです。**多対多 — 両側の複数行が一致する場合。慎重な取り扱いが必要で、シンプルなモデルでは一般的に避けられます。
タスク
データモデルでリレーションシップを作成します。
ステップ1 — ダイアグラムビューを開く
リボンのPower Pivotタブに移動し、管理をクリックします。
Power Pivotウィンドウ右下の2番目のアイコンでダイアグラムビューに切り替えます。
4つの未接続のボックス(各テーブルごとに1つ)が表示されます。これが開始点です。
ステップ2 — 3つのリレーションシップを作成する
ディメンションテーブルのキー列からSalesテーブルの対応する列へクリック&ドラッグして、それぞれのリレーションシップを作成します。
Customers → Sales: CustomersボックスのCustomerIDをSalesボックスのCustomerIDへドラッグします。
Products → Sales: ProductsボックスのProductIDをSalesボックスのProductIDへドラッグします。
Dates → Sales: DatesボックスのDateをSalesボックスのOrderDateへドラッグします。
各ドラッグ後に表示される線の両端を確認します。ディメンションテーブル側が1、Sales側が*になっている必要があります。逆の場合は線を削除してやり直してください。必ずディメンションテーブル側に1が表示されるようにします。そうでない場合は、ドラッグする列の順序を逆にするか、**「リレーションシップの管理」**機能(下記ステップ3参照)を使用してください。
ステップ3 — 「リレーションシップの管理」で確認する
Power Pivotウィンドウで、デザインタブ → リレーションシップの管理に進みます。
3つのリレーションシップがすべてリストに表示されていること、それぞれ両側のテーブルと列が正しいことを確認します。
ダイアログを閉じ、Power Pivotウィンドウも閉じます。
ステップ4 — ピボットテーブルで検証する
Excelで挿入 → ピボットテーブルに進みます。
このブックのデータモデルを使用するを選択し、OKをクリックします。
ピボットテーブルのフィールドウィンドウで、CustomersのRegionを行エリアに、SalesのTotalを値エリアにドラッグします。
ピボットテーブルで各地域ごとに異なる売上合計が表示され、同じ数値が繰り返されていないことを確認します。これでCustomers → Salesのリレーションシップが機能していることが分かります。
さらにProductsのCategoryも行エリアにドラッグします。これにより、3つの異なるテーブルから同時にデータを取得し、地域とカテゴリごとに売上が分解されて表示されます。
1. Diagram ViewでCustomersテーブルとSalesテーブルの間にリレーションシップを作成しました。ドラッグを離した後、*記号がCustomers側に、1がSales側に表示されていることに気付きました。これは何を意味しますか?
2. データモデルを使ってPivotTableを作成したとします。CustomersテーブルからRegion、SalesテーブルからTotalを同じPivotTableにドラッグしました。すべての地域の行に同じ数値(グランドトータル)が4回繰り返し表示されます。最も考えられる原因は何ですか?
フィードバックありがとうございます!
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください