Если я правильно понимаю логику, будет выполнено простое сравнение:
SELECT DISTINCT d.id AS id,
(CASE WHEN c.a <> 'UNK' THEN c.a
WHEN b.a <> 'UNK' THEN b.a
WHEN c.e <> 'UNK' THEN c.e
ELSE b.e
END) AS output,
FROM . . .
NULL
не сможет выполнить сравнение <>
, так что это должно быть семантически эквивалентным.