# PostgreSQL - カスタム SQL アクションを使用して長いクエリを実行

このアクションを使用すると、設定されたタイムアウト内でカスタム SQL クエリを非同期で実行することができます。INSERTUPDATEDELETE のようなデータ操作言語(DML)ステートメントや、CREATEALTERDROP のようなデータ定義言語(DDL)コマンドを実行するために使用できます。

カスタム SQL クエリの処理が開始されると、Workato は定期的にクエリ結果が取得可能かどうかを確認します。結果が正常に取得されると、Workato はレシピの次のステップに進みます。

# 長いクエリを使用する理由

大量のデータセットをアップロード(INSERT)または更新(UPDATE)している場合、アクションの応答に長い時間がかかることがあります。タイムアウトの制限を超えると、タイムアウトエラーによりレシピが失敗する原因となります。

SQL クエリを非同期で実行すると、大規模なデータセットに対してクエリを実行することができます。アクションが実行できる最大時間は 60 分です。この上限を超えると、ジョブはタイムアウトします。

Long Query Action カスタム SQL アクションで長いクエリを実行

# 入力フィールド

入力フィールド 説明
SQL

このフィールドは必須です。実行する有効な SQL 文字列を入力してください。この SQL 文字列はあなたの PostgreSQL インスタンスで実行されます。

複数の SQL ステートメントが提供された場合、それらはすべて実行されます。ただし、最後のステートメントからの結果のみが返されます。各ステートメントは ; で区切られていることを確認してください。

ここでデータピルをマッピングして、動的に変化する SQL ステートメントを実行することができます。データピルをシングルクォーテーション (' ') で囲むことを忘れないでください。

パラメータ このフィールドは SQL ステートメントと共に使用されます。まず、WHERE 句の入力で名前付きバインド変数を宣言します。次に、この入力フィールドを使用してこれらの変数に値を割り当てます。パラメータ値は静的なものまたはデータピルであることができます。データベースがバインド変数に期待する最も近い対応するデータ型を選択してください。
タイムアウト制限(分)

この待機アクションの上限を設定します。このアクションが指定されたタイムアウトより長くかかると、ジョブはエラーを返します。最大タイムアウトは 60 分です。

出力フィールド

SQL ステートメントから期待する列を説明するためにこの入力を使用します。戻り値が期待されない場合、または必要ない場合は、この入力フィールドを無視しても構いません。

# 出力フィールド

出力フィールド 説明

SQL 実行から返された行のリスト。このリストのフィールドは、出力フィールドの入力フィールドで定義されます。

空白のままにすると、この行はデータツリーで配列のデータピルとして利用可能になります。

影響を受けた行数 データ操作言語(DML)ステートメントの実行によって影響または変更された行数を指します。

DDL(CREATE)の実行時には、値 0 が返されます。

行数 返された行数を指します。


Last updated: 2025/3/13 6:42:56