Hier ist das Szenario: Wenn ich hql wie folgt aufruft, sagt es mir, dass es keinen Alias für u1 finden kann.
%Vor% Dieses Problem ist das gleiche wie wenn ich versuche, count(*) as cnt
zu benutzen. Könnte mir jemand einen Hinweis geben, wie man den Alias in where-Klausel verwendet? Vielen Dank!
Die where
-Klausel wird vor der select
-Klausel ausgewertet, weshalb Sie in Ihrer where-Klausel nicht auf ausgewählte Aliase verweisen können.
Sie können jedoch auf Aliase aus einer abgeleiteten Tabelle verweisen.
%Vor%Randnotiz: Ein effizienterer Weg zum Schreiben der letzten Abfrage wäre
%Vor% Wenn ich mich richtig erinnere, können Sie sich auf den Alias in having
, also having cnt >= 2