一意の列(sal_id、gal_id)と金額、税金、日付、その他の列を持つテーブルSAMPLEがあります。
サンプルテーブル
actual_id, sal_id, gal_id, processed_flag, amount, tax date
1 101 201 Y 10 1 25-Aug-12
2 101 201 Y 20 3 27-Aug-12
3 101 201 N 15 2 29-Aug-12
ここで、未処理 (process_flag='N') と最大日付を持つ進行中のデータ (process_flag='Y') の違いを見つける必要があります。(sal_id + gal_id) の組み合わせの金額と税金の差額を計算する必要があります。
したがって、クエリの戻り値は次のようになります。
この例では、(101, 201) については、2 つの処理された行と (actual_id 2 が最大の日付を持っています。したがって、actual_id 3 と actual_id 2 行の違いを見つける必要があります。
actual_id, sal_id, gal_id, total_amount, total_tax date
3 101 201 -5 (15-20) -1 (2-3) 29-Aug-12
Oracle 11g を使用しています。私を助けてください。