MySQL - スケジュール済みクエリトリガー

このページは機械翻訳により提供されています。翻訳内容と英語版に相違がある場合は、英語版が優先されます。

スケジュール済みカスタムSQLによる新規/更新済み行のバッチ

このトリガーは、ユーザー定義の間隔で実行されるユーザー定義クエリから返された行を取得します。これはバッチアクショントリガーであり、返された行をバッチで処理します。

新規/更新済み行トリガー新規/更新済み行トリガー

入力フィールド説明
SQL新しい行を取得するために各ポーリング間隔で実行されるカスタムSQLクエリ。
スケジュールSQLを実行する頻度を選択します。
タイムゾーンスケジュールに設定するタイムゾーンを選択します。
SQLクエリを実行する時刻の時を設定します。
SQLクエリを実行する時刻の分を設定します。
月の日SQLクエリを実行する月の日を設定します。
曜日SQLクエリを実行する曜日を選択します。
バッチサイズ このレシピの個々のジョブで処理するバッチサイズを設定します。デフォルトは100です。

入力フィールドの詳細

SQL

行を選択するために実行するSQLを指定します。ここで指定したSQLは、出力データツリーの生成に使用されます。これを行うために、SQLは指定時に1回実行されます。ここでデータピルをマッピングして、動的に変化するSQLステートメントを実行できます。データピルは引用符('')で囲むことを忘れないでください。意図している場合は、以前のジョブ実行で処理済みの行を取得しないようにするため、必ずいくつかのWHERE句を含めてください。これは、テーブル内のupdated_atまたはcreated_atタイムスタンプ列に基づいて行を限定することで実行できます。

sql
select *
from contacts
where contacts.created_at between now() and now() + INTERVAL 1 DAY;

SQLでTOPのような制限句を使用しないでください。これは、クエリで返される行数の制限が、バッチサイズ入力フィールドで定義された値に基づいているためです。独自のlimit句を追加すると、アクションは失敗します。

スケジュール

インテグレーションのユースケースに必要なスケジュールのタイプを選択します。この入力フィールドは、次の選択肢があるピックリストです。

  • 毎時
  • 毎日
  • 毎月

タイムゾーン

スケジューラーに設定するタイムゾーンを選択します。これは必須フィールドです。

スケジュール済みSQLクエリを実行する時刻の時を設定します。これは、スケジュールとして毎日または毎月を選択した場合にのみ必要です。

スケジュール済みSQLクエリを実行する時刻の分を設定します。これは常に必須です。

月の日

月の日として131の値を指定します。日数の少ない月では、値が月の最終日に切り下げられる場合があります。例:値31を使用し、その月が31日より前に終わる場合、トリガーは月の最終日にSQLクエリを実行します(例:2月28日、3月31日、4月30日など)

スケジュールとして毎月を選択した場合にのみ必要です。これは任意フィールドであり、空のままにするとデフォルトで月の初日になります。

曜日

スケジュール済みSQLクエリを実行する曜日を選択します。これは、スケジュールとして毎時または毎日を選択した場合にのみ必要です。毎時を選択した場合、トリガーはここで選択された曜日にSQLを1時間ごとに実行します。

バッチサイズ

各ジョブで返す行のバッチサイズ。これは1から最大バッチサイズまでの任意の数値にできます。最大バッチサイズは100で、デフォルトは100です。

任意のポーリングで、行数が設定されたバッチサイズより少ない場合、このトリガーはすべての行をより小さいバッチとして配信します。

最終更新日: