PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

La colonne n'existe pas ?

Vous ne pouvez pas référencer un alias de colonne dans la clause WHERE.

  SELECT u1.id,
         COUNT(DISTINCT u2.userstatus) as TEMPCOLUMN 
    FROM USERS AS u1
    JOIN friendssym ON u1.id = friendssym.user_id
    JOIN USERS as u2 ON friendssym.friend_id = u2.id      
GROUP BY u1.id
  HAVING COUNT(DISTINCT u2.userstatus) = 1

En SQL traditionnel, le plus tôt vous pouvez référencer un alias de colonne est le ORDER BY clause. Mais MySQL et SQL Server autorisent l'accès dans le HAVING et GROUP BY clauses.