Don't do it the PeopleSoft way, whatever you do! Or at least how PeopleSoft worked many years ago when I was exposed to it. Each table had an effective_from_date column (can't remember the actual name) but no effective_to_date column, so to get the record for any particular date you had to write something like:
Code:
select ...
from the_table t1
where ...
and effective_from_date =
( select max(effective_from_date)
from the_table t2
where t2.key_col = t1.key_col
and t2.effective_from_date <= :date_variable
);
For a join of data from many tables, you had to repeat this subquery for each one. Not the most efficient of solutions!