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

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

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

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

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

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

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

# 入力フィールド

入力フィールド 説明
SQL

This field is required。実行する有効なSQL文字列を提供してください。このSQL文字列はあなたの Snowflake インスタンスで実行されます。

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

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

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

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

出力フィールド

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

# 出力フィールド

出力フィールド 説明

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

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

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

DDL(CREATE)を実行すると、値0が返されます。

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


Last updated: 2025/3/13 9:42:40