Возможно, вы могли бы сделать это с подзапросами.Например:
Select someTable.ID, someTable.A, someTable.B,
case subT.myColumn = 0 then 'BLARG' else 'huh?' end As outerMyColumn
from someTable,
(Select ID, case when X = 1 then
case when Y <> 0 YY else XX end
else ZZ
end as MyColumn
From someTable
where someCondition) subT
where subT.ID = someTable.ID;