奇妙な更新クエリを書く必要があります。
これがテーブルです
PK-ID (int) --- FK-ID (int) --- Value (int)
私のデータ セットで、FK-ID でグループ化し、PK-ID で並べ替える場合、これが 1 つのグループの例であるとします。
5 --- 10 --- 23
7 --- 10 --- 49
8 --- 10 --- 81
一部の古いソフトウェアのバグにより、レコード 7 と 8 の値が正しくありません。7 の正しい値は (49-23) = 26 で、8 の正しい値は (81-49) = 32 です。レコード 5 は正しいです。
FK-ID でグループ化され、PK-ID で並べ替えられている場合、各レコードを更新して、直前のレコードの値を減算する必要があります。前のレコードがない場合、値を変更する必要はありません。
これを達成するために一般的な SQL 更新クエリを作成する方法はありますか? グループ内の前のレコードの値を (条件付きで) どのように取得しますか? SQL サーバー 2008 を使用しています。
ありがとう!