4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Power BI で複数のテーブルのデータを分析する

Last updated at Posted at 2022-10-06

ACCESS やリレーショナル データベースをかじったことのある人なら「リレーション」についてなんとなくでもご存じかと思いますが、そうでなければ???という感じだと思います。
Power BI はデータ ウェアハウスについての考え方、スタースキーマなどを知っていると高度に活用できるのですが、「まず今 Excel で苦労しているのを効率化したい!」という方にそこから勉強しろというのはちょっと酷かな、とも思います。とりあえず Power Query の「クエリのマージ」のやり方を知っていただくと、データをつなげることを手っ取り早く始めることができます。

クエリのマージ

「クエリのマージ」は2つのテーブルを、キーとなる列 (共通であることを特定できる列) を使って1つのテーブルにすることを言います。Excel だと VLOOKUP なんかを使う操作です。
例:社員テーブルと部門テーブルは「部門ID」がキーとなります。
社員テーブル

社員番号 社員名 部門コード
1 赤井 101
2 青木 101
3 黒田 201

部門テーブル

部門コード 部門名
101 営業
201 人事
301 総務

Power Query エディターで、社員テーブルのクエリで「クエリのマージ」を実行すると、このような画面が出てきます。
image.png

「部門コード」列がキーになるので、それぞれのテーブルで部門コードをクリックして選択しています。

この例ではシンプルに、キー列が1つの場合で説明していますが、複数の列でキーとすることも可能です。
その場合は、クリックした順に列名に数字が付くので、同じデータの列同士が同じ数字になるようにクリックします。

「OK」ボタンを押すとこうなります。
image.png

「社員テーブル」に「部門テーブル」という名前の列が追加されています。この「部門テーブル」という列名の右側の矢印のアイコン「↰↱」をクリックすると、部門テーブル内のどの列を追加するかを選択できます。
image.png
「部門コード」は重複するのでチェックを外しています。また、[元の列名をプレフィックスとして使用します]のチェックも外しています。(チェックを入れておくと列を追加するときに「テーブル名.列名」の形式の列名が付きます。)
この状態で[OK]をクリックすると、下図のように社員テーブルに「部門名」が追加されます。
image.png

どちらかのテーブルのキー列はユニーク (一意:重複がない) であることが望ましいです。この例の場合、部門テーブル側にも部門コードの重複があると、その部門コードのデータが複数行作られてしまいます。

社員テーブルに部門テーブルのデータを入れたので、部門テーブルは不要になりますが、削除してしまうと社員テーブルがエラーになってしまいます。そこでクエリの「部門テーブル」を右クリックし、[読み込みを有効にする]の左側のチェック ☑ を外します。
image.png
こうすることで、不要になった部門テーブルがレポート作成画面に表示されなくなり、更新時にデータのインポートも行われません。(社員テーブルには読み込まれるのでご安心ください。)

「クエリのマージ」については @yugoes1021 さんの こちらのQiita に詳しく載っていますので、ここでは割愛します。
また、弊社メンバーのこちらのブログ記事では Excel の Power Query を使って、よりディープに解説しているので、本記事に物足りなさを感じる方はこちらもぜひご覧ください。

「クエリのマージ」のすぐ下にある「クエリの追加」は、同じ形の複数のテーブルのデータを足しこむ操作です。同じフォーマットの複数のテーブルを1つにまとめるような場合に使用します。SQL でいうところの UNION です。

データ量が多くなるとクエリのマージはパフォーマンスに響くこともありますが、Excel 手作業から脱却するような場合においては有用です。Power Query エディターは、データベースやSQLになじみのない方、Excel 関数で頑張っている方にもとっつきやすい部分なので、ぜひ活用してみてください。

4
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?