Я думаю, что вам нужно использовать LEFT
объединение, так как вам вообще не нужно рассматривать таблицу ICT
, если PCT.NAME NOT LIKE '%middleware'
, и обрабатывать случай, когда PCT.NAME LIKE '%middleware'
, тогда вы можете использовать предложение WHERE
.
Этого можно добиться с помощью следующего:
LEFT JOIN V_CHANGE_TASKS ICT
ON PCT.NAME NOT LIKE '%middleware'
AND ICT.CHANGE_ID=ICD.CHANGE_ID
AND ICT.STATUS NOT IN ('Closed','Staged')
WHERE (ICT.CHANGE_ID is not null OR PCT.NAME LIKE '%middleware')