[
http://opensource.atlassian.com/projects/hibernate/browse/HHH-892?page=co...
]
Chris Wilson updated HHH-892:
-----------------------------
Attachment: HibernateHavingAliasTest.java
This is also a problem for HAVING columns. See the attached test case for a very simple
example, which generates the following query on MySQL:
select house0_.id as col_0_0_,
SUM(case cats1_.sex when 'M' then 1 else 0 end) as col_1_0_,
SUM(case cats1_.sex when 'F' then 1 else 0 end) as col_2_0_
from House house0_
inner join Cat cats1_ on house0_.id=cats1_.house_id
group by house0_.id
having num_male<>num_female;
generating the same error message:
WARN JDBCExceptionReporter: SQL Error: 1054, SQLState: 42S22
ERROR JDBCExceptionReporter: Unknown column 'num_male' in 'having clause'
In my view, using the Hibernate generated aliases (col_1_0_ and col_2_0_) in the having
clause is not a very good workaround, because they are not specified by the standard and
could change at any time.
Since I provided an explicit alias name, I would like it to be used in the SQL query, but
failing that, I hope it would be possible to resolve aliases in the HAVING clause.
HQL parser does not resolve alias in ORDER BY clause
-----------------------------------------------------
Key: HHH-892
URL:
http://opensource.atlassian.com/projects/hibernate/browse/HHH-892
Project: Hibernate Core
Issue Type: Bug
Components: query-hql
Affects Versions: 3.0.5
Environment: Hibernate 3.0.5, MySQL, Tomcat
Reporter: Guido Laures
Priority: Minor
Attachments: HibernateHavingAliasTest.java
When using an alias for an ORDER BY clause this is not always correctly resolved.
Example:
SELECT SUM(A.x) AS mySum FROM MyClass AS A GROUP BY A.y ORDER BY mySum
does not work because "mySum" is not resolved in the ORDER BY clause which
results in an exception telling that mySum is an unknown column.
Workaround (not to say "hack") is using:
SELECT SUM(A.x) AS mySum FROM MyClass AS A GROUP BY A.y ORDER BY col_0_0_
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://opensource.atlassian.com/projects/hibernate/secure/Administrators....
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira