Query SQL:
SELECT B.SUBJECT, B.CATALOG_NBR, A.DESCR, B.ACAD_GROUP, B.ACAD_ORG, D.SUBJECT, D.CATALOG_NBR, C.DESCR, D.ACAD_GROUP, D.ACAD_ORG,A.CRSE_ID,TO_CHAR(A.EFFDT,'YYYY-MM-DD'),C.CRSE_ID,TO_CHAR(C.EFFDT,'YYYY-MM-DD')
FROM PS_CRSE_CATALOG A, PS_CRSE_OFFER B, PS_CRSE_CATALOG C, PS_CRSE_OFFER D
WHERE ( A.EFFDT =
(SELECT MAX(A_ED.EFFDT) FROM PS_CRSE_CATALOG A_ED
WHERE A.CRSE_ID = A_ED.CRSE_ID
AND A_ED.EFFDT <= SYSDATE)
AND A.CRSE_ID = B.CRSE_ID
AND A.EFFDT = B.EFFDT
AND C.EFFDT =
(SELECT MAX(C_ED.EFFDT) FROM PS_CRSE_CATALOG C_ED
WHERE C.CRSE_ID = C_ED.CRSE_ID
AND C_ED.EFFDT <= SYSDATE)
AND C.CRSE_ID = D.CRSE_ID
AND C.EFFDT = D.EFFDT
AND A.EFF_STATUS = 'A'
AND C.EFF_STATUS = 'A'
AND A.DESCR = C.DESCR
AND B.SUBJECT < D.SUBJECT
AND substr ( B.CATALOG_NBR, 1, 4) = substr ( D.CATALOG_NBR, 1, 4)
AND B.INSTITUTION = :1
AND B.INSTITUTION = D.INSTITUTION )
ORDER BY 1, 2, 6