Important
Mustache パラメーターの構文は、従来の SQL エディターでのみサポートされています。 Databricks では、新しいクエリに 名前付きパラメーター マーカー を使用することをお勧めします。 口ひげ構文を使用してクエリをノートブック、AI/BI ダッシュボード データセット エディター、または Genie 空間にコピーする場合は、実行する前に名前付きパラメーター マーカーに変換する必要があります。
従来の SQL エディターでは、二重中かっこ ({{ }}) でラップされた文字列は、クエリ パラメーターとして扱われます。 パラメーター値を設定した結果ウィンドウの上にウィジェットが表示されます。
mustache パラメーターを追加する
- [
Cmd + I] をクリックします。 パラメーターがカーソル位置に挿入され、[パラメーターの 追加 ] ダイアログが表示されます。 - キーワードを入力し、必要に応じてタイトルを変更し、種類を選択します。
- [パラメーター の追加] をクリックします。
- ウィジェットでパラメーター値を設定します。
- [変更の適用] をクリックします。
- 保存 をクリックします。
または、クエリに直接 {{ }} 入力し、パラメーター ウィジェットの歯車アイコンをクリックして構成します。
別の値でクエリを再実行するには、ウィジェットを更新し、[変更の 適用] をクリックします。
パラメーターの編集、削除、並べ替え
編集:パラメータウィジェットの横にある歯車アイコンをクリックします。 クエリを所有していないユーザーがパラメーター値を変更できないようにするには、[ 結果のみを表示] をクリックします。
削除: クエリからパラメーター マーカーを削除します。 ウィジェットは自動的に削除されます。
並べ替え: パラメーター ウィジェットをクリックして目的の順序にドラッグします。
ウィジェットの種類
次のウィジェットの種類を使用できます。
テキスト
入力として文字列を取ります。 バックスラッシュ、単一引用符、二重引用符は自動的にエスケープされます。 Azure Databricks では、値の周囲に引用符が追加されます。
SELECT * FROM samples.tpch.customer WHERE c_name = {{ name_param }}
番号
数値を入力として受け取ります。
SELECT * FROM users WHERE age = {{ number_param }}
日付と時間
日付とタイムスタンプの値をパラメーター化します。 次の 3 つのオプションを使用できます。
| タイプ | 精度 |
|---|---|
| 日付 | Day |
| 日付と時間 | 分 |
| 日付と時刻 (秒付き) | Second |
すべての日付と時刻の値は文字列リテラルとして渡され、クエリでは単一引用符で囲む必要があります。
SELECT * FROM usage_logs WHERE date = '{{ date_param }}'
Range オプションを選択すると、Azure Databricks では、.startと.endサフィックスを使用して 2 つのパラメーターが作成されます。
SELECT * FROM usage_logs
WHERE modified_time > '{{ date_range.start }}'
AND modified_time < '{{ date_range.end }}'
注
日付範囲ウィジェットは、 DATE型の列に対してのみ正しい結果を返します。 タイムスタンプ列の場合は、日付と時刻の範囲ウィジェットを使用します。
動的な日付値: 日付ウィジェットには青い稲妻アイコンが含まれます。 クリックして、 today、 yesterday、 this week、 last week、 last month、 last yearなどの動的な値を選択します。 これらの値は自動的に更新されます。
Important
動的な日付値は、スケジュールされたクエリと互換性がありません。
ドロップダウン リスト
定義済みの静的リストに入力を制限します。 単一値選択と複数値選択の両方をサポートします。
単一値: クエリでパラメーターを単一引用符で囲みます。
複数値: ウィジェット設定で [複数の値を許可する ] を有効にします。 値を一重引用符、二重引用符、またはなしで囲むかどうかを制御するには、[ 引用符 ] オプションを使用します。
WHEREを使用するようにIN句を更新します。SELECT * FROM orders WHERE status IN ( {{ status_param }} )二重引用符を選択すると、クエリは次の
WHERE status IN ("value1", "value2", "value3")に解決されます。
ドロップダウン リストの値は文字列です。 日付またはタイムスタンプを使用するには、データ ソースに必要な形式で日付またはタイムスタンプを入力します。
クエリベースのドロップダウン リスト
保存されたクエリからドロップダウンの選択肢を補充します。 ドロップダウン リストのように動作しますが、オプションは動的です。
- [設定] パネルの [ 種類 ] で、[ クエリ ベース] ドロップダウン リストを選択します。
- [ クエリ ] フィールドをクリックし、保存したクエリを選択します。
クエリが複数の列を返す場合、Azure Databricks は最初の列を使用します。 クエリが name および value という名前の列を返す場合、ウィジェットは name 列を表示しますが、関連付けられている value を実行時にクエリに渡します。
例:
SELECT user_uuid AS 'value', username AS 'name' FROM users
| value | 名前 |
|---|---|
| 1001 | John Smith |
| 1002 | Jane Doe |
| 1003 | Bobby Tables(ボビー・テーブルズ) |
実行時にデータベースに渡される値は、表示名ではなく、 1001、 1002、または 1003です。
注
ソース クエリから多数のレコードが返された場合、パフォーマンスが低下します。
レガシ ダッシュボードで口ひげパラメーターを使用する
必要に応じて、クエリではパラメーターまたは静的値を使用できます。 パラメーター化されたクエリに基づく視覚化をダッシュボードに追加する場合は、各パラメーターを構成して、次の 3 つの値ソースのいずれかを使用できます。
- ウィジェット パラメーター: 属している単一の視覚エフェクトにのみ適用されます。 値セレクターが視覚化パネル内に表示されます。
- ダッシュボード パラメーター: ダッシュボード全体の複数の視覚エフェクトに適用できます。 値セレクターがダッシュボードの上部に表示されます。 既定では、パラメーター化された視覚化をダッシュボードに追加するときに追加されます。
- 静的な値: パラメーターを固定値に置き換えます。 値セレクターは非表示であり、変更する必要のないパラメーターに対してダッシュボード UI をクリーンに保ちます。
パラメーター マッピング設定にアクセスするには、ダッシュボード ウィジェットの kebab メニューをクリックし、[ ウィジェット設定の変更] を選択します。
ダッシュボード パラメーターのプロパティ
| 財産 | 説明 |
|---|---|
| タイトル | 値セレクターの横に表示される表示名。 デフォルトではパラメーターキーワードを使用します。 静的パラメーターの場合は表示されません。 |
| キーワード | このパラメーターの文字列リテラルは、基になるクエリのものです。 予期しない結果をデバッグする場合に便利です。 |
| 既定値 | 他の値が指定されていない場合に使用される値。 変更するには、目的の値でクエリを実行し、[ 保存] をクリックします。 |
| 値のソース | パラメーター値の取得元を制御します。 オプション: 新しいダッシュボード パラメーター、 既存のダッシュボード パラメーター、 ウィジェット パラメーター、 静的な値。 |