以下に示すように、ソーステーブルにデータがあります。
Employee_Id Status Date Address Phone number
52345 N 28-Jan-10 ABC 9833455456
52345 N 30-Apr-10 ABC 9833455456
52345 Y 13-Dec-10 ABC 9934467879
10145 N 25-Mar-10 PQR 8766129989
32456 N 20-Jun-10 XYZ 9860799849
32456 N 03-Nov-10 XYZ 9860799849
32456 Y 07-Feb-11 XYZ 9860799849
32456 Y 22-May-11 XYZ 8977767889
32456 N 18-Sep-11 DEF 9811223300
42123 N 25-Feb-10 MNO 9920030048
42123 N 23-Sep-11 MNO 9833445566
目的は、出力で従業員の一意のレコードを取得することですが、以下の基準に基づいています。
- 従業員 ID が一意の場合は、そのまま渡します。
- 従業員 ID が重複している場合は、status="Y" のレコードを渡します</li>
- status="Y" を適用しても Employee Id が重複する場合は、日付が最新のレコードを選択します。
これらのルールを使用すると、次の結果が得られるはずです。
Employee_Id Status Date Address Phone number
52345 Y 13-Dec-10 ABC 9934467879
10145 N 25-Mar-10 PQR 8766129989
32456 Y 22-May-11 XYZ 8977767889
42123 N 23-Sep-11 MNO 9833445566