これはSQLの場合のように不可能であり、実行の順序は最初にwhere句、次にselectです。 where句が実行されるとき、エイリアスとして何を定義したかがわからないため、そのエラーが発生します。
クエリを次のように書き直す必要があります。
SELECT
SUBSTRING(pk, 6, 2)::INT AS _year
FROM
listing
WHERE
SUBSTRING(pk, 6, 2)::INT > 90
これはSQLの場合のように不可能であり、実行の順序は最初にwhere句、次にselectです。 where句が実行されるとき、エイリアスとして何を定義したかがわからないため、そのエラーが発生します。
クエリを次のように書き直す必要があります。
SELECT
SUBSTRING(pk, 6, 2)::INT AS _year
FROM
listing
WHERE
SUBSTRING(pk, 6, 2)::INT > 90