HQL keyword is not case sensitive:
ALL ANY AND AS ASC AVG BETWEEN CLASS COUNT DELETE desc DOT DISTINCT ELEMENTS ESCAPE EXISTS FALSE FETCH FROM FULL GROUP HAVING IN INDICES INNER IS JOIN LEFT LIKE MAX MIN NEW NOT NULL OR ORDER OUTER RIGHT SELECT SET SOME SUM TRUE UPDATE WHERE
The following is SQL keywords, non-HQL keywords: Case end on dam