2 つの「インデックス」フィールドを含むデータを返す必要がある SQL Server 2005 のクエリに取り組んでいます。最初のインデックス 't_index' は 'shade' 列が変更されるたびに増加し、2 番目のインデックスは 'shade' 列の値のパーティション内で増加します。
t_index s_index shade
1 1 A
1 2 A
1 3 A
1 4 A
1 5 A
2 1 B
2 2 B
2 3 B
2 4 B
2 5 B
s_index 列を取得するには、次を使用しています。
Select ROW_NUMBER() OVER(PARTITION BY [shade] ORDER BY [shade]) as s_index
私の質問は、「シェード」列の値が変更されたときにのみ最初のインデックスをインクリメントする方法です。