カーソルを使用して各従業員の賢明な情報を渡し、内部で計算を行います。
次のような宣言でいくつかの一時テーブルを使用しました
declare @tempTask1 table(emplid nvarchar(10), Values bigint)
メインテーブルに格納する
insert into Maintable
Select * from @tempTask1
しかし、何が起こるかというと、ループがemplid
に追加され続けるとき@tempTask1
です。
例のように
E1 1001
E2 1002
...
ループの回数に応じて
そのため、各レコードに重複したエントリが存在し、計算が失敗しました。
これらのデータの問題を回避するために、この一時テーブルを削除し、ループ内で使用される emp テーブルを再作成する方法。
注: 各ループ sld は、ループ時に一意の empplied を 1 回だけ取得します。