Zkuste odstranit vnořený case
. Možná to z nějakého důvodu znamená rozdíl pro kompilátor:
CASE
WHEN b.condition = 'ERROR' AND c.condition2 = 'ERROR' THEN d.condition3
WHEN b.condition = 'ERROR' THEN c.condition2
ELSE c.condition
END as current_condition,
...