今回は前回設定した時刻有効性(Temporal Validity)の表を参照してみます。
以下の様な有効期限が表のデータに設定してあります。

     EMPNO ENAME
---------- ----------
       100 SCOTT       2000/10/1~
       200 KING        2002/4/1~2010/03/30
       300 ADAMS       2001/4/1~2012/12/31


時点を指定してSELECTを実行してみます。

SQL> SELECT * FROM emp3
  2  AS OF PERIOD FOR user_time
  3  TO_DATE('2002-01-01','YYYY-MM-DD');

     EMPNO ENAME
---------- ----------
       100 SCOTT
       300 ADAMS


まず、2002/01/01時点で有効なデータを参照しています。
AS OF PERIOD FOR句で時点を指定しています。

SQL> SELECT * FROM emp3
  2  VERSIONS PERIOD FOR user_time
  3  BETWEEN TO_DATE('2010-04-01','YYYY-MM-DD')
  4  AND SYSDATE;

     EMPNO ENAME
---------- ----------
       100 SCOTT
       300 ADAMS


次に2010/04/01~現時点で有効なデータを参照しています。
VERSIONS PERIOD FOR 句で範囲を指定しています。

SQL> exec DBMS_FLASHBACK_ARCHIVE.ENABLE_AT_VALID_TIME('ALL');

PL/SQLプロシージャが正常に完了しました。

SQL> SELECT * FROM scott.emp3;

     EMPNO ENAME
---------- ----------
       100 SCOTT
       200 KING
       300 ADAMS


さらにDBMS_FLASHBACK_ARCHIVEのENABLE_AT_VALID_TIMEプロシージャでデフォルトの動作を指定できます。
デフォルトは全データALLを表示します。

exec DBMS_FLASHBACK_ARCHIVE.ENABLE_AT_VALID_TIME('CURRENT');

SQL> SELECT * FROM scott.emp3;

     EMPNO ENAME
---------- ----------
       100 SCOTT

CURRENTを指定すると現時点で有効なデータが表示されます。