次の値を持つテーブル t がありますcol1
-
1
1
3
4
4
4
5
7
10
13
次のように番号を付け直す必要があるため、番号間のギャップが消去されます。
1
1
2
3
3
3
4
5
6
7
ギャップ範囲を見つけることができます。番号を付け直す方法が見つかりませんでした - 分析関数を適用しようとしましrow_num()
たが、正しい結果が得られません。コードは Oracle と SQL Server の両方で機能するはずなので、connect by
レベルはおそらく最適な方法ではありません。