TIBCO Cloud™ Spotfire® Web クライアント ユーザー ガイド

カスタム クエリのパラメータ

1 つまたは複数の変数の値によって異なる結果をクエリで取得したい場合、パラメータの使用をクエリ上で設定することができます。たとえば、1 つのパラメータをテキストエリアのプロパティ コントロールにマッピングすることができます。

パラメータは ?parametername 構文を使用して参照されます。ここで、parametername は、[カスタム クエリ] ダイアログの [パラメータ] タブ上でパラメータに選択し、データ型を定義した名前です。

SELECT Col1, Col2 FROM Table WHERE Col1 > ?Param1
注: データを選択するデータベース テーブルをパラメータを使用して制御することはできません。たとえば、次のようなカスタム クエリを記述することはできません。
SELECT * FROM ?parametername

その理由は、パラメータにテーブル識別子を格納できないためです。文字列とテーブル識別子は通常、SQL クエリでは異なる方法で処理されます。

カスタム クエリにパラメータを追加する

カスタム クエリでパラメータを使用するには、クエリでパラメータを呼び出し、[カスタム クエリ] ダイアログでパラメータを構成する必要があります。

始める前に

  • カスタム クエリの作成と記述に関する詳細については、「カスタム クエリ」を参照してください。

手順

  1. カスタム クエリを作成するには、データ接続にカスタム クエリを追加する の手順に従います。
  2. [カスタム クエリ] ダイアログで、クエリを記述します。クエリ内でパラメータを呼び出す場合、パラメータ名の前に疑問符をつけて指定します。
    次に例を示します。
    SELECT Col1, Col2 FROM Table WHERE Col1 > ?Param1
  3. [パラメータ] タブで、クエリのパラメータをすべて追加して指定します。パラメータを追加するには、[新規...] をクリックします。
  4. [新規パラメータ] ダイアログで、パラメータの情報、すなわち名前、Spotfire データ型、および外部データ ソースのデータ型を入力します。
  5. 変更を保存して [カスタム クエリ] ダイアログを閉じるには、[OK] をクリックします。

パラメータを含むカスタム クエリを使用する

データ型とパラメータ

多くの場合、複数のデータベースのデータ型は単一の Spotfire のデータ型にマッピングされます。一例として、Microsoft SQL Serverのデータ型 varcharnvarchartextntext はすべて Spotfire の文字列データ型にマッピングされます。このような場合、パラメータ タイプを宣言する際に、外部システムのデータ型も指定できます。つまり、外部システムで nvarchar になる Spotfire の文字列データ型のパラメータを持つことができます。Spotfire は外部の型のパラメータを自動的にはマッピングできませんが、外部の型を手動で指定するとより効率的なクエリとなります。Spotfire の型と外部の型との一対一マッピングがある場合、外部の型のドロップダウン リストは無効になります。

パーソナライズされたパラメータ

ユーザーと分析のエンドユーザーが Spotfire Server にログインしている場合は、[パーソナライズされたクエリにパラメータを使用 (ユーザーとグループ)] チェック ボックスを選択すると有効になる current_usercurrent_groups および current_user_domain のようなパーソナライズされたクエリに 1 つまたは複数の事前定義済みパラメータを使用することもできます。これらのパラメータは、インフォメーションデザイナーから使用する場合 (パーソナライズされたインフォメーションリンクで説明) と同様の方法で動作します。

チェック ボックスが有効になると、パーソナライズされたクエリ パラメータをカスタム クエリ内で使用できるようになります。これらのパラメータ タイプは Spotfire では常に文字列となり、外部の型は既定値になります。たとえば Microsoft SQL Server では NVARCHAR になります。