私は以下のようなテーブル構造を持っています
id wstage wstatus wdate
101 Unaquired create 2013-08-29 17:07:20.040
101 Unaquired rework 2013-08-29 18:07:20.040
101 inprocess accqui 2013-08-29 19:07:20.040
101 inprocess alloca 2013-08-29 20:07:20.040
101 Unaquired create 2013-08-29 21:07:20.040
101 Unaquired rework 2013-08-29 22:07:20.040
私はこれを次のように番号付けする必要があります
id wstage wstatus wdate rownumber
101 Unaquired rework 2013-08-29 22:07:20.040 1
101 Unaquired create 2013-08-29 21:07:20.040 1
101 inprocess alloca 2013-08-29 20:07:20.040 2
101 inprocess accqui 2013-08-29 19:07:20.040 2
101 Unaquired rework 2013-08-29 18:07:20.040 3
101 Unaquired create 2013-08-29 17:07:20.040 3
関数を使用しようとしています
select *,ROW_NUMBER() over (partition by id,wstage order by wdate desc) rownumber
しかし、これは望ましい出力を与えていません。pl/sql を使用したくありません。これを達成するためのランキング関数または単純なクエリはありますか。私のテーブルには 5,000 万件のレコードがあります。