現在、2 つの SQL コマンドがあります。
テーブルから一意の ID のリストを取得します。
もう 1 つは、同じストアド プロシージャを呼び出すこれらの ID を繰り返し処理しますが、これは現時点では単なる挿入ステートメントです。
したがって、(偽の名前で)例を挙げると、現時点では次のように呼び出しています:
SELECT DISTINCT ID FROM TableOfIDs;
返された値をリストに格納し、次のストアド プロシージャを呼び出します。
INSERT INTO Table ([Date], [Number], [ID]) VALUES( @CurrDate,
                                                   (SELECT SUM(Number2) 
                                                    FROM Table2 
                          WHERE RowID = @ID
                          AND CurrDate = (SELECT MAX(CurrDate) 
                                    FROM Table2
                                    WHERE RowID = @ID))
                    ,@ID)
したがって、簡略化された表は次のようになります。
Table
Date | Number | ID (FK)
Table2
CurrDate | RowID(FK) | Number2
両方の ID は、TableOfIDs テーブルへの外部キーです。
1 つのクエリですべての ID を取得し、1 晩に最大 400 のストアド プロシージャを呼び出すのではなく、これらすべてを 1 つのクエリまたは 1 つのストアド プロシージャで実行するにはどうすればよいでしょうか? :)
どうもありがとう; さらに詳細が必要な場合はお問い合わせください。ギャップを埋めます。
どちらも同じテーブルへの外部キーです。