Isso não é possível pois no sql, a ordem de execução é primeiro, a cláusula where e depois o select. No momento em que a cláusula está sendo executada, ela não sabe o que você definiu como um alias e, portanto, você receberá esse erro.
Você precisa reescrever sua consulta assim ..
SELECT
SUBSTRING(pk, 6, 2)::INT AS _year
FROM
listing
WHERE
SUBSTRING(pk, 6, 2)::INT > 90