Tach!
Doch. Having arbeitet auf der Ergebnismenge, die die SELECT-Klausel erzeugt hat. In der Abarbeitung liegt SELECT zwischen GROUP BY und HAVING.
Nein, da wirfst du Sachen durcheinander.
Ja,
HAVING
arbeitet auf dem Result Set. Jedoch nicht auf dem viaSELECT
erzeugten, sondern auf dem Result-Set vor dem auswerten der Spaltenliste - die wird nämlich zuletzt ausgewertet.
MySQL arbeitet da anders, da kann man sich mit HAVING auf das SELECT-Resultset beziehen. (Dem "zuletzt ausgewertet" widersprichst du dir ja nachfolgend selbst, das muss ich nicht tun.) Der OP hatte kein DBMS angegeben, und so ging ich vom Quasi-Standard im Webumfeld aus.
dedlfix.