SELECT A.EMPLID , A.EMPL_RCD , B.EFFDT , B.ESTABID , C.RISKCD , C.AT_SECTION , C.STANDARD_RT , C.AT_CODE_FRA FROM PS_JOB A , PS_ESTAB_TBL B , PS_RISK_TBL C WHERE A.ESTABID = B.ESTABID AND ( B.EFFDT = ( SELECT MAX(D.EFFDT) FROM PS_ESTAB_TBL D WHERE A.ESTABID = D.ESTABID AND D.EFFDT <= A.EFFDT AND D.EFF_STATUS = 'A' ) OR ( B.EFFDT > A.EFFDT AND (B.EFFDT < ( SELECT MIN(E.EFFDT) FROM PS_JOB E WHERE E.EMPLID = A.EMPLID AND E.EMPL_RCD = A.EMPL_RCD AND E.EFFDT > A.EFFDT) OR NOT EXISTS ( SELECT 'X' FROM PS_JOB E WHERE E.EMPLID = A.EMPLID AND E.EMPL_RCD = A.EMPL_RCD AND E.EFFDT > A.EFFDT AND E.COMPANY = A.COMPANY) ) ) ) AND B.EFF_STATUS = 'A' AND A.ESTABID = C.ESTABID AND B.EFFDT = C.EFFDT
|