テーブルの結合方法として、Zoho Analyticsには以下の2種類の方法が用意されています。
複数のテーブルのデータを組み合わせてレポートやダッシュボードを作成するにあたって、Zoho Analyticsにはテーブルの 自動結合 機能が用意されています。この機能では、複数のテーブル間でルックアップ列(関連付けに使用する列)を通じて参照関係が設定されている場合において、レポートの作成時に対象のテーブルが自動で結合されます。自動結合機能を有効にするには、ルックアップ列を使用して対象のテーブル間で参照関係を設定する必要があります。2つのテーブル間で参照関係を設定するには、2つのテーブルの間で共通する列が必要です。以下では、例を挙げて自動結合機能について説明します。
まず、ルックアップ列の設定方法について説明します。次に、レポートの作成時に参照関係によって複数のテーブルがどのように結合されるかを説明します。
例:「店舗売上」のワークスペース
「店舗売上」のワークスペースには、「商品」、「売上」、「営業担当者」というテーブルが保存されています。 「売上」 と 「営業担当者」 のテーブルには、 「営業担当者ID」 という共通の列があります。「売上」のテーブルでは、売上の担当者を識別できるように各売上のデータに 「営業担当者ID」 が入力されています。 「営業担当者」 のテーブルでは、営業担当者を識別するための情報として 「営業担当者ID」 が使用されています。同様に、 「売上」 と 「商品」 のテーブルには、 「商品ID」 という共通の列があります。「売上」のテーブルでは、販売した商品を識別できるように各売上のデータに 「商品ID」 が入力されています。 「商品」 のテーブルでは、商品を識別するための情報として 「商品ID」 が使用されています。
この場合、 「売上」 と 「営業担当者」 のテーブル間において、共通の列である「営業担当者ID」を使用して参照関係を設定することができます。同様に、 「売上」 と 「商品」 のテーブル間においては、共通の列である 「商品ID」 を使用して参照関係を設定することが可能です。共通の列(ルックアップ列)を通じて参照関係を設定すると、自動結合機能によってこれらのテーブルのデータが自動で結合されます。結合されたテーブルのデータをもとにレポートを作成することが可能です。
参照関係の設定は、初回のインポートの設定時に行うことができます。後から、既存のテーブルで設定を行うことも可能です。また、レポートの編集画面から参照関係を設定することもできます。以下では、テーブル間の参照関係を設定する方法について説明します。
こちらでは、テーブルから参照関係を設定する方法について説明します。
説明には、上記で取り上げた 「店舗売上」のワークスペース とそのテーブルを使用します。 「売上」 と 「営業担当者」 のテーブル間において、共通の列である 「営業担当者ID」 を使用して参照関係を設定します。
また、以下の手順でも参照関係を設定できます:
これにより、ルックアップ列 「営業担当者ID」 を通じて、 「売上」 と 「営業担当者」 のテーブル間で参照関係が設定されます。上記の例では、 「売上」 のテーブルは、 「営業担当者」 のテーブルを参照します。そのため、 「営業担当者」 のテーブルは親テーブルと呼ばれ、「営業担当者」のテーブルに対して 「売上」 のテーブルは子テーブルと呼ばれます。
同様に、 「売上」 と 「商品」 のテーブル間において、共通の列である「営業担当者ID」を使用して参照関係を設定できます。この場合、 「商品」 のテーブルは親テーブルと呼ばれ、「商品」のテーブルに対して 「売上」 のテーブルは子テーブルと呼ばれます。
インポートの設定画面では、Zoho Analyticsによって類似データが識別され、ルックアップ列の候補として表示されます。詳細については、以下のスライドをご参照ください。
複数のテーブルにおいて参照関係を設定する操作は、レポートの編集画面から行うこともできます。詳細については、以下のスライドをご参照ください。
ルックアップ列を通じて複数のテーブル間で参照関係を設定した後、これらのテーブルのデータをもとにレポートを作成できます。レポートの作成画面には、自動結合されたテーブル内の列がすべて表示されます。これらの列をドラッグ&ドロップするだけでレポートを作成することが可能です。
引き続き上記の例を用いて、 自動結合機能を使用して各営業担当者による売上のグラフを作成する方法を説明します 。
自動結合機能により、ルックアップ列 「商品ID」 を通じて 「売上」 と 「営業担当者」 のテーブルのデータが自動で結合されます。結合されたデータをもとに、レポートを作成できます。
また、結合されたテーブル内のデータを使用してレポートにフィルターを適用することも可能です。引き続き上記の例で説明します。各営業担当者による売上のグラフにおいて、 「商品」 のテーブルの列 「商品名」 を使用してフィルターを適用すると、各営業担当者による売上のうち、フィルター条件で選択した商品の 売上 を表示することができます。
初期設定では、「左結合」(LEFT JOIN)を使用してテーブルが結合されます。Zoho Analyticsで使用できる結合方法は、以下のとおりです。
必要に応じて結合方法を変更できます。結合方法を変更するには、以下の手順を実施します:
ワークスペース内では、ルックアップ列を使用して複数のテーブル同士を関連付けることができます。ルックアップ列はいくつでも使用可能です。Zoho Analyticsでレポートを作成する際、自動結合機能によって各テーブルでルックアップ列が識別され、テーブル間での参照経路が設定されます。
ただし、場合によっては参照経路が適切に設定されないこともあります。この問題を解決するため、Zoho Analyticsではテーブル間の参照経路を選択することができます。参照経路を適切に設定し、要件に適したレポートを作成することが可能です。
「課題管理」のワークスペース を例に説明します。「課題管理」のワークスペースには、「課題」、「ユーザー」、「プロジェクト」というテーブルが保存されています。 「課題」 と 「ユーザー」 のテーブルは、 「担当者ID」 (課題の担当者を表すID)と 「報告者ID」 (課題の報告者を表すID)の2つのルックアップ列を通じて結合されています。 また、 「課題」 のテーブルと 「プロジェクト」 のテーブルは、ルックアップ列 「プロジェクトID」 を通じて結合されています。さらに、 「プロジェクト」 と 「ユーザー」 のテーブルは、 「責任者ID」 (プロジェクトの責任者を表すID)と 「ユーザーID」 の2つのルックアップを通じて結合されています。この場合、 「課題」 と 「ユーザー」 のテーブルは、直接的な関連付けの他に、 「プロジェクト」 のテーブルを通じても、間接的に関連付けられています。
上記の例において、 各ユーザーが報告した課題 に関するレポートを作成するとします。上記の例では、「課題」と「ユーザー」のテーブルは、「担当者ID」と「報告者ID」の2つのルックアップ列を通じて結合されています。初期設定では 「担当者ID」 をルックアップ列として 「課題」と「ユーザー」 のテーブルからレポートが作成されるため、報告者ではなく担当者に関する課題(各担当者が担当している課題)に関するレポートが作成されてしまいます。
この場合、ルックアップ列を「報告者ID」に変更することで、報告者に関する課題(各ユーザーが報告した課題)のレポートを適切に作成することができます。以下のスライドでは、上記の例においてルックアップ列を変更する方法について説明しています。
これにより、目的のレポートを適切に作成することが可能です。
テーブル同士を結合するためのルックアップ列は、複数選択することができます。これにより、複数の条件を満たすデータに関するレポートを作成することが可能です。 上記の「課題管理」のワークスペースにおいて、「担当者」と「報告者」が同じユーザーである課題に関するレポートを作成するとします。この場合、「担当者ID」と「報告者ID」の両方をルックアップ列として選択することで、「担当者」かつ「報告者」に割り当てられている課題(「担当者」と「報告者」が同じユーザーである課題)のレポートを作成することができます。以下のスライドでは、上記の例において複数のルックアップ列を選択する方法について説明しています。
Zoho Analyticsでは、結合されているテーブル間の参照経路を変更することもできます。
上記の「課題管理」のワークスペースにおいて、各ユーザーが報告した課題をプロジェクトごとに色分けしたレポートを作成するとします。上記の例では、 「課題」 と 「ユーザー」 のテーブルは、ルックアップ列を通じて直接的に結合されています。初期設定では、参照経路が「課題」と「ユーザー」のテーブル間でのみ設定されている状態でレポートが作成されます。このため、各ユーザーが報告した課題は、課題に関連付けられているプロジェクトではなく、ユーザーに関連付けられているプロジェクトごとに色分けされて、レポートが作成されてしまいます。 つまり、参照経路に 「プロジェクト」 のテーブルに含まれていないため、「プロジェクト」のテーブルと「課題」のテーブルが結合されず、レポートの作成時に「プロジェクト」と「課題」の関連付けがレポートに反映されません。
この場合、 「プロジェクト」 のテーブルを通じて 「課題」 と 「ユーザー」 のテーブルが結合される参照経路に変更することで、「プロジェクト」のテーブルのデータを反映させ、各ユーザーが報告した課題をプロジェクトごとに色分けしたレポートを作成することができます。 以下のスライドでは、上記の例においてテーブル間の参照経路を変更する方法について説明しています。
これにより、 「プロジェクト」 のテーブルを通じて 「課題」 と 「ユーザー」 のテーブルが結合される参照経路が適用され、各ユーザーが報告した課題をプロジェクトごとに色分けしたレポートが適切に作成されます。
メモ :2つのテーブルを結合するにあたって、設定可能な参照経路は1つのみです。 複数の参照経路を設定することはできません。 ただし、3つ以上のテーブル間では複数の参照経路を設定できます。
クエリーテーブルとは、 複数のテーブルからデータを抽出 し、独自のテーブルを作成する機能です。作成したクエリーテーブルをもとにレポートを作成したり、データを分析したりすることが可能です。複数のテーブルからデータを抽出するにあたって、データベースでデータを扱うための「SQL」(Structured Query Language)と呼ばれる言語における SELECT 構文を使用できます。クエリーテーブルによって出力されたデータは、テーブルと同様のデータ構造を持ちます。クエリーテーブルを他のユーザーに共有したり、クエリーテーブルをもとに別のクエリーテーブルを作成したりすることも可能です。
複数のテーブルからのデータの抽出、複数のテーブルのデータの縦結合(UNION)、データの加工処理、関数の適用など、さまざまな操作を行うことができます。
以下の画像は、上記の「店舗売上」のワークスペースにおいて、クエリーテーブルによって 「売上」と「営業担当者」 のテーブルから各営業担当者による売上のデータを抽出した例です。
上記のクエリー構文により、 「売上」 と 「営業担当者」 のテーブルが結合され、データが抽出されます。クエリーテーブルを通じて結合したテーブルをもとに、さまざまな種類のレポートを作成したり、データを分析したりすることができます。
詳細については、 こちら をご参照ください。