複数のテーブルに結合する再帰CTEクエリとテーブルを同期させる必要があります。CTEは、実行されるたびに異なる結果を返す場合があります(結合するテーブルに変更が加えられた場合)。CTEは低速であり、トリガーを起動させるクエリはトリガーが起動するまで返されないため、トリガーを実行させる余裕はありません(単一のレコードを単純に更新する必要はありません)。トリガーが終了するのを待っているため、15秒)。SSMSでソリューションを実装する方法の詳細もいいでしょうが、必須ではありません。
1つの解決策は、スケジュールされたジョブでCTEを実行し、その結果をテーブルとマージすることです。スケジュールされたジョブは数秒ごとに実行できるため、テーブルは可能な限り最新の状態になります。しかし、SQL Server 2005でスケジュールされたジョブを作成する方法や、CTEクエリの結果をテーブルとマージする方法がわかりません。
私の質問を言い換えると:
CTEを使用して、テーブルを可能な限りリアルタイムに近い状態に保つにはどうすればよいですか?