クエリの追加

追加操作では、1 つまたは複数のテーブルの内容を別のテーブルに追加することによって 1 つのテーブルを作成し、テーブルの列ヘッダーを集約して新しいテーブルのスキーマを作成します。

元のテーブルのいずれかに存在しない列に null 値が設定されている追加操作の結果を示す図。

Note

同じ列ヘッダーを持たないテーブルが追加されると、すべてのテーブルのすべての列ヘッダーが結果のテーブルに追加されます。 前の図の列 C と D で示すように、追加されるテーブルのいずれかに、他のテーブルの列ヘッダーが含まれない場合、結果のテーブルではそれぞれの列に null 値が設定されます。

[クエリを追加する] コマンドは、[ホーム] タブの [結合] グループにあります。 ドロップダウン メニューには、次の 2 つのオプションがあります。

  • [クエリを追加する] を選ぶと、現在のクエリに別のテーブルを追加するための [追加] ダイアログ ボックスが表示されます。
  • [クエリを新規クエリとして追加する] を選ぶと、複数のテーブルを追加して新しいクエリを作成するための [追加] ダイアログ ボックスが表示されます。

[クエリの追加] コマンドが強調されている [Power Query ホーム] タブ リボンのスクリーンショット。

追加操作には、少なくとも 2 つのテーブルが必要です。 [追加] ダイアログ ボックスには 2 つのモードがあります。

  • 2 つのテーブル: 2 つのテーブル クエリを結合します。 これは既定のモードです。
  • 3 つ以上のテーブル: 任意の数のテーブル クエリを結合できます。

Note

テーブルは、選ばれた順序で追加されます。2 つのテーブル モードの場合は主テーブルから始まり、3 つ以上のテーブル モードの場合は、[追加するテーブル] の一覧の主テーブルから始まります。

2 つのテーブルを追加する

この記事の例では、サンプル データを含む次の 2 つのテーブルを使用します。

  • Online Sales: オンライン チャネルで行われた売上。

    チャネル名 (オンライン)、日付、顧客 ID、および単位列を含むサンプルのオンライン販売テーブルのスクリーンショット。

  • Store Sales: 会社の物理的な場所で行われた売上。

    日付、単位、参照者、顧客 ID、およびチャネル名 (店舗) 列を含むサンプル店舗売上表のスクリーンショット。

これらのテーブルを追加するには、最初に Online Sales テーブルを選びます。 [ホーム] タブで、[クエリを追加する] を選びます。これにより、Online Sales クエリに新しいステップが作成されます。 Online Sales テーブルが主テーブルになります。 主テーブルに追加するテーブルは、Store Sales です。

追加するテーブルとして Store Sales が設定されている [追加] ダイアログのスクリーンショット。

Power Query により、両方のテーブルで見つかる列ヘッダーの名前に基づいて、追加操作が実行されます。それぞれのテーブルのヘッダー セクションにおけるヘッダーの相対的な位置は考慮されません。 最終的なテーブルには、すべてのテーブルのすべての列が追加されます。

あるテーブルに別のテーブルに列が見つからない場合、最終クエリの Referrer 列に示されているように、対応する列に null 値が表示されます。

オンライン販売行の null 値を含む Referrer 列を除く、共通の列とデータを組み合わせたテーブルのスクリーンショット。

3 つ以上のテーブルを追加する

この例では、Online Sales テーブルと Store Sales テーブルだけでなく、Wholesale Sales という名前の新しいテーブルも追加します。

チャネル名 (卸売)、日付、顧客 ID、および単位の列を含むサンプルの卸売販売テーブルのスクリーンショット。

この例の新しい方法では、[クエリを新規クエリとして追加する] を選んでから、[追加] ダイアログ ボックスで [3 つ以上のテーブル] オプション ボタンを選びます。 [利用可能なテーブル] ボックスの一覧で追加する各テーブルを選んでから、[追加] を選びます。 必要なすべてのテーブルを [追加するテーブル] ボックスの一覧に移動した後、[OK] を選びます。

3 つ以上のテーブル モードを使用した追加ダイアログのスクリーンショット。

[OK] を選ぶと、すべてのテーブルが追加された新しいクエリが作成されます。

3 つのテーブルの共通列とデータを組み合わせたスクリーンショット。ただし、Referrer 列の online 行と Wholesale 行の null 値は除きます。