質問:CC=1やWP=2などのコードを割り当て、クエリのその部分を作成して目的の結果を得るにはどうすればよいですか?同じ取引日に複数の取引がある場合は、ビジネスルールを適用します。
これがOracle11gに関する私の質問です
select tid,
cycle,
apply_no,
seq_no,
trans_date,
trans_type,
priority
from ( select tid,
cycle,
apply_no,
seq_no,
trans_date,
trans_type,
rank() over (partition by tid,
order by trans_date desc,seq_no desc) priority
from transactions where tid=1
現在の結果
TID cycle apply_no seq_no trans_date trans_type priority
----------------------------------------------------------------
1 201420 2 2 27-NOV-12 WP 1
1 201320 1 1 27-NOV-12 CC 2
1 201420 2 1 16-OCT-12 CC 3
望ましい結果
TID cycle apply_no seq_no trans_date trans_type priority
---------------------------------------------------------------
1 201420 2 2 27-NOV-12 CC 1
1 201320 1 1 27-NOV-12 WP 2
1 201420 2 1 16-OCT-12 CC 3
理由: trans_dateが同じである場合、ビジネスルールではCCがWPよりも優先されます(CCがWPの前にソートされるためではありません)。