Oracle может сделать это действительно легко, но я не уверен, как применить это в этом случае.Но что-то вроде этого:
select Distinct ATTR_VALUE
from TRNSFR_CRSE
where (ORG_ID, SUBJECT, CRSE_NBR, SUBJECT_TO, CATALOG_NBR_TO) IN
(Select TRNSFR_SRC_ID, SUBJECT, CRSE_NBR, SUBJECT_TO, CATALOG_NBR_TO
from TRNSFR_CRSE
where ORG_ID = ?
) and
CRSE_ATTR = 'GHH'
Вы можете использовать =
вместо in
, если знаете, что подзапрос должен возвращать не более одной строки.