PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Alias ​​di riferimento nella clausola WHERE

Questo non è possibile in quanto in sql, l'ordine di esecuzione è prima, la clausola where e poi select. Nel momento in cui la clausola viene eseguita, non sa cosa hai definito come alias e quindi riceverai quell'errore.

Devi riscrivere la tua query in questo modo.

SELECT
    SUBSTRING(pk, 6, 2)::INT AS _year
FROM
    listing
WHERE
SUBSTRING(pk, 6, 2)::INT > 90