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

Eksisterer kolonnen ikke?

Du kan ikke henvise til et kolonnealias i WHERE-sætningen.

  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

I traditionel SQL er den tidligste du kan referere til et kolonnealias ORDER BY klausul. Men MySQL og SQL Server tillader adgang i HAVING og GROUP BY klausuler.




  1. Undgå knee-Jerk Performance fejlfinding

  2. Hvordan nulstiller man sekvensen i postgres og udfylder id-kolonnen med nye data?

  3. SQL datakontrolsprog

  4. MySQL datoformat - hvad du behøver at vide