クエリを追加する

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

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

注意

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

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

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

[クエリをアペンドする] コマンド。

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

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

注意

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

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

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

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

    サンプルの Online Sales テーブルと、Channel Name (Online)、Date、CustomerID、Units の各列。

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

    サンプルの Store Sales テーブルと、Date、Units、Referer、CustomerID、Channel Name (Store) の各列。

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

2 つのテーブルを追加します。

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

最終的なクエリの Referer 列で示されているように、あるテーブルに、別のテーブルにはある列がない場合は、対応する列に null 値が設定されます。

オンライン販売の行に null 値が含まれる Referer 列を除き、共通の列とデータが結合されたテーブル。

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

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

サンプルの Wholesale Sales テーブルと、Channel Name (Wholesale)、Date、CustomerID、Units の各列。

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

3 つ以上のテーブル モード。

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

Referer 列の Online と Wholesale の行の null 値を除き、3 つのテーブルの共通の列とデータが結合されたテーブル。