I have following two tables.. 1. In this Table we will insert record when the staff join and if his supervisor or percentage change. CREATE TABLE FACTS_TIMECARD_STAFF_EFF ( STAFF_ID VARCHAR2(10 BYTE), TIMECARD_PERIOD_ID NUMBER(18), HR_PARTTIME_PCT INTEGER, SUPERVISOR_ID VARCHAR2(10 BYTE), BUREAU_ID NUMBER(18) ) INSERT INTO FACTS_TIMECARD_STAFF_EFF ( STAFF_ID, TIMECARD_PERIOD_ID, HR_PARTTIME_PCT, SUPERVISOR_ID, BUREAU_ID ) VALUES ( 'BPS01', 16822218, 100, 'JRD04', 17922782); INSERT INTO FACTS_TIMECARD_STAFF_EFF ( STAFF_ID, TIMECARD_PERIOD_ID, HR_PARTTIME_PCT, SUPERVISOR_ID, BUREAU_ID ) VALUES ( 'BPS01', 16822225, 75, 'JRD04', 17922782); INSERT INTO FACTS_TIMECARD_STAFF_EFF ( STAFF_ID, TIMECARD_PERIOD_ID, HR_PARTTIME_PCT, SUPERVISOR_ID, BUREAU_ID ) VALUES ( 'BPS01', 16822232, 80, 'BJG09', 17922782); Select * from FACTS_TIMECARD_STAFF_EFF BPS01 16822192 100 JRD04 17922782 BPS01 16822225 75 JRD04 17922782 BPS01 16822260 80 BJG09 17922782 2. CREATE TABLE FACTS_TIMECARD ( TIMECARD_ID NUMBER(18) NOT NULL, STAFF_ID VARCHAR2(10 BYTE) NOT NULL, TIMECARD_PERIOD_ID NUMBER(18) NOT NULL ) INSERT INTO FACTS_TIMECARD ( TIMECARD_ID, STAFF_ID,TIMECARD_PERIOD_ID ) VALUES (17926980, 'BPS01', 16822219); INSERT INTO FACTS_TIMECARD ( TIMECARD_ID, STAFF_ID,TIMECARD_PERIOD_ID ) VALUES ( 18168660, 'BPS01', 16822221); INSERT INTO FACTS_TIMECARD ( TIMECARD_ID, STAFF_ID,TIMECARD_PERIOD_ID ) VALUES ( 17924405, 'BPS01', 16822218); INSERT INTO FACTS_TIMECARD ( TIMECARD_ID, STAFF_ID,TIMECARD_PERIOD_ID ) VALUES ( 18844787, 'BPS01', 16822224); INSERT INTO FACTS_TIMECARD ( TIMECARD_ID, STAFF_ID,TIMECARD_PERIOD_ID ) VALUES ( 19072497, 'BPS01', 16822225); INSERT INTO FACTS_TIMECARD ( TIMECARD_ID, STAFF_ID,TIMECARD_PERIOD_ID ) VALUES ( 18157933, 'BPS01', 16822220); INSERT INTO FACTS_TIMECARD ( TIMECARD_ID, STAFF_ID,TIMECARD_PERIOD_ID ) VALUES ( 18394647, 'BPS01', 16822222); INSERT INTO FACTS_TIMECARD ( TIMECARD_ID, STAFF_ID,TIMECARD_PERIOD_ID ) VALUES ( 18618683, 'BPS01', 16822223); INSERT INTO FACTS_TIMECARD ( TIMECARD_ID, STAFF_ID,TIMECARD_PERIOD_ID ) VALUES ( 19973216, 'BPS01', 16822228); INSERT INTO FACTS_TIMECARD ( TIMECARD_ID, STAFF_ID,TIMECARD_PERIOD_ID ) VALUES ( 19748383, 'BPS01', 16822227) INSERT INTO FACTS_TIMECARD ( TIMECARD_ID, STAFF_ID,TIMECARD_PERIOD_ID ) VALUES ( 20544786, 'BPS01', 16822230); INSERT INTO FACTS_TIMECARD ( TIMECARD_ID, STAFF_ID,TIMECARD_PERIOD_ID ) VALUES ( 21009676, 'BPS01', 16822232); INSERT INTO FACTS_TIMECARD ( TIMECARD_ID, STAFF_ID,TIMECARD_PERIOD_ID ) VALUES ( 21322192, 'BPS01', 16822233); INSERT INTO FACTS_TIMECARD ( TIMECARD_ID, STAFF_ID,TIMECARD_PERIOD_ID ) VALUES ( 19986552, 'BPS01', 16822229); INSERT INTO FACTS_TIMECARD ( TIMECARD_ID, STAFF_ID,TIMECARD_PERIOD_ID ) VALUES ( 20770935, 'BPS01', 16822231); INSERT INTO FACTS_TIMECARD ( TIMECARD_ID, STAFF_ID,TIMECARD_PERIOD_ID ) VALUES ( 22224762, 'BPS01', 16822235); INSERT INTO FACTS_TIMECARD ( TIMECARD_ID, STAFF_ID,TIMECARD_PERIOD_ID ) VALUES ( 19301059, 'BPS01', 16822226); INSERT INTO FACTS_TIMECARD ( TIMECARD_ID, STAFF_ID,TIMECARD_PERIOD_ID ) VALUES ( 21771982, 'BPS01', 16822234); select* from facts_time_card; 17924405 BPS01 16822218 17926980 BPS01 16822219 18157933 BPS01 16822220 18168660 BPS01 16822221 18394647 BPS01 16822222 18618683 BPS01 16822223 18844787 BPS01 16822224 19072497 BPS01 16822225 19301059 BPS01 16822226 19748383 BPS01 16822227 19973216 BPS01 16822228 19986552 BPS01 16822229 20544786 BPS01 16822230 20770935 BPS01 16822231 21009676 BPS01 16822232 21322192 BPS01 16822233 21771982 BPS01 16822234 22224762 BPS01 16822235 I have to display something like this TIMECARD_ID STAFF_ID TIMECARD_PERIOD_ID SUPERVISOR_ID HR_PCT 17924405 BPS01 16822218 JRD04 100 17926980 BPS01 16822219 JRD04 100 18157933 BPS01 16822220 JRD04 100 18168660 BPS01 16822221 JRD04 100 18394647 BPS01 16822222 JRD04 100 18618683 BPS01 16822223 JRD04 100 18844787 BPS01 16822224 JRD04 100 19072497 BPS01 16822225 JRD04 75 19301059 BPS01 16822226 JRD04 75 19748383 BPS01 16822227 JRD04 75 19973216 BPS01 16822228 JRD04 75 19986552 BPS01 16822229 JRD04 75 20544786 BPS01 16822230 JRD04 75 20770935 BPS01 16822231 JRD04 75 21009676 BPS01 16822232 BJG09 80 21322192 BPS01 16822233 BJG09 80 21771982 BPS01 16822234 BJG09 80 22224762 BPS01 16822235 BJG09 80