このページを読むと、テーブルの結合について理解できます。
1. リレーションシップとは
2つ以上のテーブルをPower BIに読み込ませて、それらを関連づけて分析したい場合に使う機能のことをリレーションシップと言います。
例えば、'売上テーブル'「製品コード別の売上テーブル」と'製品マスタテーブル'「製品コード別の製品名テーブル」を1つの分析に用いたい場合などはリレーションシップによって2つのテーブルを関連づける必要があります。
'売上テーブル'
製品コード, 売上
A001, 200円
'製品マスタテーブル'
製品コード,製品名
A001, 鉛筆
→リレーションシップを使えば、2つのテーブルを1つのテーブルとして分析可能!
'結合テーブル'
製品コード, 製品名, 売上
A001, ,鉛筆, 200円
2. リレーションシップには、3つの種類があります。
リレーションシップには 種類があります。一見難しく思えるかもしれませんが、鍵となる思考法は"自分が分析しようとしているデータはなに別のなんのデータか"を意識することです。
これさえ考えていればわかりやすくなります。
たとえば先ほどの'売上テーブル'は、製品コード別の金額のデータですね。
なに別のデータと、なに別のデータを結合しようとしているかによってリレーションシップの種類が変わってきます。
1 対 1 のリレーションシップ
テーブル内の各レコードが、別のテーブル内の 1 つのレコードにのみ関連付けられることを意味します。
製品コード別の売上と、製品コード別の製品名は、それぞれ同じ製品コードが一つずつしか出てこないので製品コードを1対1で結合できます。
1 対多のリレーションシップ
1 つのテーブル内の 1 つのレコードが、別のテーブル内の 0 個、1 個、または複数のレコードに関連付けられることを意味します。
製品コード別日時別の売上と製品コード別の製品名の場合を考えてみましょう。
製品コード別日時別というのは、下記のように製品コードが複数出てきます。
製品コード, 日時, 売上
A001, 2023年1月,100円,
A001, 2023年2月,100円
日時別なのでA001は何回も出てきます。これは「多」と言えますね。
一方で製品コード別の製品名は、製品コードが1つしか出てこないので「1」です。
よって、この2つのテーブルでリレーションシップを組む場合は1対多となります。
多対多のリレーションシップ
1 つのテーブル内の 0 個、1 個、または複数のレコードが、別のテーブル内の 0 個、1 個、または複数のレコードに関連付けられることを意味します。
もうお分かりのことと思いますが、製品コードが複数出てくるテーブル同士を結合する場合に「多対多」を使います。
|