1つのProcess_DTと2)Process_End_DTの2つの日付フィールドに基づいて特定の時点でアクティブなレコードを表示したいとします。私のテーブルは、レコードを更新する代わりに新しいレコードを挿入することによって、各CUST_IDの履歴を保存するという規則に従います。これが発生すると、新しいレコードにProcess_DTがnow()に設定され、Process_End_DTが31-DEC-9999に設定されます。その後、元のレコードのProcess_End_DTがnow()に設定されます。したがって、Cust_ID 1は27-FEB-2015の顧客になり、まだ有効です。 Cust_ID 3は15-APR-2014で顧客になりましたが、27-FEB-2014で終了しました。開始日と終了日を使用してアクティブな行を選択する
Cust_Id Process_DT Process_End_DT Active
---------------------------------------------
1 27-FEB-2016 31-DEC-9999 1
3 15-APR-2014 27-FEB-2017 0
このコンベンションには、その名前が分かっていれば、名前にボーナスポイントがあります。私は与えられた時点で活発な記録を探したい。アクティブな列は表の一部ではありません。だから私のダミーデータの
ID Cust_Id Process_DT Process_End_DT Active
-----------------------------------------------
001 1 27-FEB-2016 31-DEC-9999 1
002 1 01-JAN-2015 27-FEB-2016 0
003 1 04-SEP-2014 01-JAN-2015 0
004 2 01-MAR-2016 31-DEC-9999 1
005 3 15-APR-2014 27-FEB-2017 0
、31-DEC-2016上のアクティブな行が上の002と005行アクティブになり31-DEC-2015に001、004、および005行アクティブになります01-DEC-2014は003と005です。