RDB

この関数は、SQL クエリーで作成されたリレーショナルリストから値を返します。

構文

=RDB(HYPERBLOCK("hyperblock_name"),row_index,"column_title")

ハイパーブロック内で RDB を使用する

リレーショナルデータベースのコンテンツは、ハイパーブロックと SQL クエリを使用して、スプレッドシートに表示されます。

[データベース構造] からリレーショナルリストをドラッグして、ハイパーブロックを作成します。値セルを選択して、[OLAP 数式を編集] ダイアログを開きます。数式タイプとして [リレーショナル値] を選択します。

[データベース] セクションで、リレーショナルデータベースのテーブルと列を選択します。[OLAP 数式] フィールドに RDB 式が表示されます。

RDB 式で表示できるのは、SQL クエリで選択されたデータフィールドのみです。

ハイパーブロック外で RDB を使用する

値セルを選択し、[関数の挿入] > [特殊] > [RDB] を選択します。

次の情報を指定します。
名前
ハイパーブロック名の指定
row_index
レコードまたは行の参照を指定します。
column_title
値を表示する列の名前を指定します。
行番号の使用
[TRUE] に設定すると、行インデックス番号がレコードの一意の名前として生成されます。

リレーショナルデータベースでは一意の名前は使用されません。一意の名前はリレーショナルテーブルの最初の列から生成されます。この場合、レコード参照はその一意の名前の値になります。このレコード参照の挙動は、ハイパーブロックの詳細設定で変更できます。

SQL テーブルの例

ID Name ElementType OrderPosition DataSourceID
Variance Variance NULL 2 NULL
Actual Actual NULL 1 NULL
Budget Budget NULL 1 NULL
Simulation Simulation NULL 2 NULL
Forecast Forecast NULL 3 NULL

行番号をインデックスとして使用しない (FALSE に設定した) 例

Element Caption Element Uniquename ID Name ElementType OrderPosition DataSourceID
Variance Variance Variance Variance NULL 2 NULL
Actual Actual Actual Actual NULL 1 NULL
Budget Budget Budget Budget NULL 1 NULL
Simulation Simulation Simulation Simulation NULL 2 NULL
Forecast Forecast Forecast Forecast NULL 3 NULL

=RDB(HYPERBLOCK("HyperblockXXX"), "Variance", "OrderPosition") を使用すると、出力値 2 が返されます。

インデックスとして使用する行番号を TRUE に設定した例

Element Caption Element Uniquename ID Name ElementType OrderPosition DataSourceID
1 1 Variance Variance NULL 2 NULL
2 2 Actual Actual NULL 1 NULL
3 3 Budget Budget NULL 1 NULL
4 4 Simulation Simulation NULL 2 NULL
5 5 Forecast Forecast NULL 3 NULL

=RDB(HYPERBLOCK("HyperblockXXX"), "3", "Name") を使用すると、出力値 Budget が返されます。