カスタム クエリのパラメータ
1 つまたは複数の変数の値によって異なる結果をクエリで取得したい場合、パラメータの使用をクエリ上で設定することができます。たとえば、1 つのパラメータをテキストエリアのプロパティ コントロールにマッピングすることができます。
パラメータは ?parametername
構文を使用して参照されます。ここで、parametername
は、[カスタム クエリ] ダイアログの [パラメータ] タブ上でパラメータに選択し、データ型を定義した名前です。
SELECT Col1, Col2 FROM Table WHERE Col1 > ?Param1
SELECT * FROM ?parametername
その理由は、パラメータにテーブル識別子を格納できないためです。文字列とテーブル識別子は通常、SQL クエリでは異なる方法で処理されます。
カスタム クエリにパラメータを追加する
カスタム クエリでパラメータを使用するには、クエリでパラメータを呼び出し、[カスタム クエリ] ダイアログでパラメータを構成する必要があります。
始める前に
- カスタム クエリの作成と記述に関する詳細については、「カスタム クエリ」を参照してください。
手順
パラメータを含むカスタム クエリを使用する
データ型とパラメータ
多くの場合、複数のデータベースのデータ型は単一の Spotfire のデータ型にマッピングされます。一例として、Microsoft SQL Serverのデータ型 varchar
、nvarchar
、text
、ntext
はすべて Spotfire の文字列
データ型にマッピングされます。このような場合、パラメータ タイプを宣言する際に、外部システムのデータ型も指定できます。つまり、外部システムで nvarchar
になる Spotfire の文字列
データ型のパラメータを持つことができます。Spotfire は外部の型のパラメータを自動的にはマッピングできませんが、外部の型を手動で指定するとより効率的なクエリとなります。Spotfire の型と外部の型との一対一マッピングがある場合、外部の型のドロップダウン リストは無効になります。
パーソナライズされたパラメータ
ユーザーと分析のエンドユーザーが Spotfire Server にログインしている場合は、[パーソナライズされたクエリにパラメータを使用 (ユーザーとグループ)] チェック ボックスを選択すると有効になる current_user
、current_groups
および current_user_domain
のようなパーソナライズされたクエリに 1 つまたは複数の事前定義済みパラメータを使用することもできます。これらのパラメータは、インフォメーションデザイナーから使用する場合 (パーソナライズされたインフォメーションリンクで説明) と同様の方法で動作します。
チェック ボックスが有効になると、パーソナライズされたクエリ パラメータをカスタム クエリ内で使用できるようになります。これらのパラメータ タイプは Spotfire では常に文字列
となり、外部の型は既定値になります。たとえば Microsoft SQL Server では NVARCHAR
になります。