Reading Time: 1 minutes

Zoho Reports の便利な機能の1つには、リレーショナルデータベースを作成できる機能があります。
定義されたリレーションシップを持つ複数のテーブルから成るリレーショナルデータベースを作成したり、インポートして利用することができます。

リレーショナルデータベースの世界では、テーブルは外部キーによって関係しています。
Zoho Reports では、これは ルックアップ列 機能によって実現しています。ルックアップ列は、あるテーブル内の1つの列が、他のテーブル内の列を参照しています。

ルックアップ列をもつ関係テーブル

Employee(従業員) データベースを例にして、詳細をご紹介します。このデータベースは、2つのテーブルDepartment(部署)Employee(従業員)から構成されます。
Department(部署) テーブルには、2つの列 Department Name(部署名) と Department ID(部署ID)があります。

Department table

Employee(従業員) テーブルには、Employee Name(従業員名)と Employee ID(従業員ID)があります。
各従業員が所属する
部署は、3つ目の列である Department ID(部署ID)によって参照されます。

Employee table


Department(部署) テーブル内に列として定義された Department ID(部署ID) は、Employee(従業員) テーブルの Department ID(部署ID) 列 で参照されます。
Employee(従業員) テーブル内のEdit Design(デザインの編集) ボタンをクリックして、このリレーションシップを定義してみましょう。
ルックアップ列内のセルをダブルクリックして、異なるテーブル内の列の一覧を表示し、参照したい列を選択します。
この例では、Department(部署) テーブルにある Department ID(部署ID)を選択します。

Lookup Column


クエリテーブルによってテーブルを結合する

リレーションシップによって相互に結合しているデータベーステーブルでは、 関係テーブルを組み合わせるデータを取得することができます。
Zoho Reports では、
SQL Select Join クエリ を持つクエリテーブルを作成することによって、関係テーブル内のデータを結合することができます。
例えば、Employee(従業員)テーブルと Department(部署) テーブルを結合するクエリは、下記のように作成することができます。

Query table


上記のクエリの例では、Employee(従業員)テーブルと Department(部署) テーブルを結合します。また同時に、Department Name(部署名) を各 Employee(従業員)にマッピングします。
Zoho Reports では、必要なテーブルを結合することで作成したクエリテーブル上で、データ分析や視覚化のための各種のレポートを作成することができます。

Cascade-on-Delete を利用したデータ整合性の強化

Zoho Reports では、関係テーブルからデータレコードを削除する際に、データの整合性を維持するための Cascade-on-Delete 機能を利用することができます。
この機能は、親テーブルでレコードが削除された際に、子テーブル内の全ての対応レコードが自動で削除されます。
上記の例では、Department(部署) テーブル <親テーブル>内の Department(部署) を削除した際には常に、Employee(従業員) テーブル<子テーブル>内の Employee(従業員)がすべて自動で削除されます。
下のスクリーンショットでは、Department(部署)テーブルから、Accounts(会計) 部署 というレコードを削除します。

Delete row


すると、Employee(従業員)テーブル内の対応レコードが自
動で削除されます。

On Delete Cascade


Zoho Reports の便利なリレーショナルデータベース機能をご理解いただけたでしょうか。
是非、本機能をお試しになり、ご意見・ご要望をお寄せください。

今後も、Zoho Reports サービスでは、リレーショナルデータベール作成機能に関して、機能を強化して行く予定です。ご期待ください!


■Zoho Reports サービスページ: http://reports.zoho.com/



なお、このブログは、本社(AdventNet Inc.)のZohoブログを翻訳・加筆したものです。
元の
記事(2009年3月23日投稿)はこちら (翻訳:清水)

Comments are closed.