私はテーブルとそのレコードを持っている:私はZを計算したいのですが、私は2つの以上の変数(BHgt2、SHgt2作成する必要がありSQL:行全体を累積コラム&和
Profile | Level | CHgt | BHgt | SHgt | Z ABCD1 | 1 | 15 | 11 | 50 | 0 ABCD1 | 2 | 15 | 11 | 70 | 0 ABCD1 | 3 | 15 | 11 | 70 | 0 ABCD2 | 1 | 15 | 11 | 60 | 0 ABCD2 | 2 | 15 | 11 | 80 | 0 ABCD2 | 3 | 15 | 11 | 80 | 0 ABCD3 | 1 | 15 | 11 | 40 | 0 ABCD3 | 2 | 15 | 11 | 60 | 0 ABCD3 | 3 | 15 | 11 | 60 | 0 ABCD1 | 1 | 15 | 11 | 50 | 0 ABCD1 | 2 | 15 | 11 | 70 | 0 ABCD1 | 3 | 15 | 11 | 70 | 0
:作成することができます)計算のバックエンドにおける
Profile | Level | CHgt | BHgt | SHgt | BHgt2 | SHgt2 | Z ABCD1 | 1 | 15 | 11 | 50 | 11 | 0 | 26 ABCD1 | 2 | 15 | 11 | 70 | 22 | 120 | 157 ABCD1 | 3 | 15 | 11 | 70 | 33 | 190 | 238 ABCD2 | 1 | 15 | 11 | 60 | 11 | 0 | 26 ABCD2 | 2 | 15 | 11 | 80 | 22 | 140 | 177 ABCD2 | 3 | 15 | 11 | 80 | 33 | 220 | 268 ABCD3 | 1 | 15 | 11 | 40 | 11 | 0 | 26 ABCD3 | 2 | 15 | 11 | 60 | 22 | 100 | 137 ABCD3 | 3 | 15 | 11 | 60 | 33 | 170 | 218 ABCD1 | 1 | 15 | 11 | 50 | 11 | 0 | 26 ABCD1 | 2 | 15 | 11 | 70 | 22 | 120 | 157 ABCD1 | 3 | 15 | 11 | 70 | 33 | 190 | 238
本質的BHgt2プロフィールによって累積され、レベル& SHgt2がその値+前回値の累積であり、しかし、最終的にレベル1 = 0、Z = CHGT + BHgt2 + SHgt2
ROW_Number &の結合とcteの組み合わせを使用しようとしました。しかし私の心は固まっているようだ。
1つのSELECT文が
誰でもselect文のためのアイデアを持っているZを計算するクエリを選択し、その後、BHgt2とSHgt2
ため、おそらく最初の更新クエリことはできないだろうか?これはSQL Server 2008用です
すべての列が細かいようだが、私はBhgt2 –
を入力したものよりも思えますDavidChen私の結果は、最後の行の10を除いて、あなたの望む結果と一致します。 –
のための右の#が届かない@私はこれを試してみましょう、とところで、あなたの出力は、右の私が –