私はおそらくこれについて間違った方法をとっていると知っていますが、再帰的なCTEを理解しようとしています。 再帰的な共通テーブル式
私は考えは、量10の貫通に再帰的にループを固定し、トータルの量を除去することであった単純なテーブル
RowNum Type Amount
1 Anch 10
2 Amt 1
3 Amt 2
4 Amt 3
5 Amt 4
を作成しました。
私は以下の
OBVは動作しませんWITH cte_Rec (RowNum, [Type], Amount, Amount2, RT, RN)
AS (SELECT RowNum,
[Type],
Amount,
Amount,
Amount,
RowNum
FROM dbo.tbl_RecursiveCTE
WHERE [Type] = 'Anch'
UNION ALL
SELECT r.RowNum,
r.[Type],
r.Amount,
ct.Amount,
ct.Amount - r.Amount AS RT,
ct.RowNum
FROM dbo.tbl_RecursiveCTE r
INNER JOIN cte_Rec ct
ON ct.RowNum = r.RowNum - 1)
SELECT *
FROM cte_Rec
を思い付きました。
アイデア?
希望の結果は何ですか? –
アンカー値を取得し、それから反復的に「amt」値を削除する。 –
そのサンプルデータの希望する結果を表形式で入力し、質問に編集してください。 –