EQL問合せでのトークンの使用

カスタム可視化コンポーネントのEQL問合せでは、EQL問合せでのトークンの置換がサポートされています。トークンは、単に、コンポーネントの「可視化設定」パネル内のユーザーインタフェース・コントロールに対応するEQL問合せ内の変数です。コントロールには、属性(メトリックまたはディメンション)、ビュー、データ・ビューおよびソートが含まれます。たとえば、EQL問合せ内のソート・トークンでは、コンポーネント構成内に、プロジェクト・ユーザーが選択できるASCまたはDSCソート・コントロールが作成されます。ディメンション・トークンでは、プロジェクト・ユーザーが選択できる、属性のドロップダウン・メニューが作成されます。

EQL問合せでは、トークンはパーセンテージ記号(%)によって囲まれた文字列です(例: %metric_1%)。次に示すのは、5つのトークン(%metric_1%%groupby_1%%dataview%%sort%%num_recs%)を含むEQL文の例です。
RETURN data AS SELECT
%metric_1% AS metric,
%groupby_1% AS groupby
FROM "%dataview%"
GROUP BY groupby
ORDER BY metric %sort%
PAGE(0,%num_recs%);

Studioは、コンポーネントの「可視化設定」パネル内のユーザー構成に基づいて、値でトークンを置換します。この値は、Studioが問合せを実行しコンポーネントの結果を生成する際に使用されます。

トークン・タイプ

トークンは、トークンが表すデータ型、およびコンポーネントによるトークンの値の取得方法によって区別されます。次の表は、各トークン・タイプを示し、EQL問合せを実行する前に、Studioがどのようにトークンを値で置換するかを説明しています。

トークン・タイプ 置換値の例
属性(メトリックまたはディメンション・サブタイプ)

属性トークンは、メトリックまたはディメンションのいずれかを表します。

メトリックトークンは、メトリックのメニューおよび集計関数を表します。コンポーネントの構成時に、メトリック・トークンのデータ型を選択して、プロジェクト・ユーザーがどの属性を選択可能か決定します。同様に、コンポーネントの構成時に、集計関数(SUMなど)を選択して、プロジェクト・ユーザーがどの属性を選択可能か決定します。

メトリック・トークンは、プロジェクト・ユーザーがコンポーネントの「可視化設定」パネルから属性および集計関数を選択すると置換されます。

ディメンショントークンは、プロジェクト・ユーザーが選択できる属性のドロップダウン・メニューを表します。コンポーネントの構成時に、ディメンション・トークンのデータ型を選択して、プロジェクト・ユーザーがどの属性を選択可能か決定します。たとえば、文字列のデータ型を選択した場合、文字列属性のみが選択可能となります。

ディメンション・トークンは、ユーザーがコンポーネントの「可視化設定」パネルから属性を選択すると置換されます。

メトリックおよびディメンション・トークンの両方のタイプはビュー・トークンに関連付けられており、ビュー・トークンは、ユーザーインタフェース・メニューに移入するために属性が取得されるデータ・ビューを指示します。

属性トークンの値は、JavaScript APIとともに設定される場合もあります。

SUM(p_price)
ビュー

ビュー・トークンは、プロジェクト・ユーザーが選択できる、データ・ビューのドロップダウン・メニューを表します。

トークンは、ユーザーがコンポーネントの「可視化設定」パネルからデータ・ビューを選択すると置換されます。

ビュー・トークンの値は、JavaScript APIとともに設定される場合もあります。

p_price
ソート

ソート・トークンは、プロジェクト・ユーザーが選択できる、コンポーネント構成内のASCまたはDESCソート・コントロールを表します。

トークンは、ユーザーがコンポーネントの「可視化設定」パネルからソート方向(ASCまたはDESC)を選択すると置換されます。デフォルト値は、ASCです。

ソート・トークンの値は、JavaScript APIとともに設定される場合もあります。

ASC
データ

データ・トークンの値は、JavaScript APIとともに設定する必要があります。

トークンの詳細は、カスタム可視化コンポーネントJavaScript APIリファレンスを参照してください。

トークンの置換の例

次に示すのは、トークンを含むEQL問合せの例です。

RETURN data AS SELECT
%metric_1% AS metric,
%groupby_1% AS groupby
FROM "%dataview%"
GROUP BY groupby
ORDER BY metric %sort%
PAGE(0,%num_recs%);
次に示すのは、トークンが値で置換された同じEQL問合せの例です。
RETURN data AS SELECT
SUM(p_price) AS metric,
p_color AS groupby
FROM "wine_dataset"
GROUP BY groupby
ORDER BY metric ASC
PAGE(0,20);