パラメーター化クエリ parameterized-queries
クエリ サービス では、クエリエディター でのパラメーター化クエリの使用がサポートされています。 パラメーター化されたクエリでは、パラメーターのプレースホルダーを使用して、実行時にパラメーター値を追加できるようになりました。 プレースホルダーを使用すると、ステートメントが実行されるまで値が何であるかわからない動的データを操作できます。 また、クエリを事前に準備し、同様の目的で再利用することもできます。 クエリを再利用すると、ユースケースごとに個別の SQL クエリを作成しなくなるため、かなりの労力を節約できます。
前提条件
このガイドを続ける前に、 クエリエディター UI ガイドをお読みください。 クエリエディターガイドでは、Experience Platform ユーザーインターフェイス内でカスタマーエクスペリエンス(顧客体験)データのクエリを記述、検証および実行する方法について詳しく説明しています。
パラメーター化クエリ構文 syntax
パラメーター化されたクエリでは、形式 '$YOUR_PARAMETER_NAME' が使用され、ドット表記を使用して連結できます。 パラメーター化されたクエリを使用するSQL 文の例を以下に示します。
INSERT INTO
$Database_Name.Schema_Name.adwh_lkup_process_delta_log
(process_name, merge_policy_id, process_status, process_date, create_ts, change_ts)
SELECT
'$Table_Process_Name' process_name,
hash('$Merge_PolicyID') merge_policy_id,
'$process_status' process_status,
to_date('$date_key') process_date,
CURRENT_TIMESTAMP create_ts,
CURRENT_TIMESTAMP change_ts;
パラメーター化されたクエリ作成 create
UIにパラメーター化されたクエリを作成するには、クエリエディターに移動します。 詳細については、 クエリエディターへのアクセス のセクションを参照してください。
'$' の序文を使用して、テキストエディターでクエリにクエリパラメーターを入力します。次へ、Query parametersの横にあるConsoleタブを選択し、キーの欠損値を追加します。必要なキーのいずれかに値を追加しないと、クエリを実行できません。 アラートアイコン(
クエリログの詳細を使用してパラメーター値を確認 check-parameter-values
使用される値は永続的ではないため、テンプレート内にパラメーターを保存することはできません。 ただし、 Query log details ページを確認して、クエリ実行で使用されるパラメーター値を見つけることができます。 この場合、ログは、クエリがパラメーター化されたクエリであったことを示しません。 使用されている値を見つける方法については🔗クエリログのドキュメントを参照してください。
パラメーター化されたクエリスケジュール schedule
パラメーター値は、パラメーター化されたクエリをスケジュールするときに保存されます。 パラメータ化されたクエリをスケジュールするには、ガイド クエリスケジュールを作成するで説明されているように、スケジュールされたクエリを作成する一般的なプロセスフォローする、クエリ実行で使用するパラメータ値を入力します。 このUIセクションは、パラメーター化されたクエリに対してのみ表示されます。 詳しくは、 スケジュールされたパラメーター化クエリのパラメーターの設定 の節を参照してください。
次の手順
このドキュメントでは、Adobe Experience Platform UI でクエリをパラメーター化し、スケジュールされたクエリの実行で使用する方法について説明しました。 また、このドキュメントでは、クエリの実行で使用されるパラメーター値のログを確認する方法についても重点的に説明しました。
次へ、 スケジュールされたクエリの監視 に関するガイドを読み、Experience Platform UIを通じてすべてのクエリジョブのステータスをよりよく理解することをお勧めします。