HQL新列表创建和按计数排序

时间:2012-03-28 13:48:31

标签: java hibernate hql

我正在执行如下的HQL查询,并尝试按计数列排序列表:

select new Persons(count(*) as cnt, p.id, p.name, p.city) group by p.city order by cnt

Hibernate如何给我以下错误:

Unknown column 'cnt' in 'order clause'

有没有办法将城市数量包含在人物对象中,并获得一个也按计数排序的列表,或者我是否必须以其他方式进行排序?

我正在使用MySQL作为数据库后端。

干杯,

OsQu

1 个答案:

答案 0 :(得分:0)

啊,将order(*)添加到order by子句中非常简单。如此有效的解决方案:

select new Persons(count(*) as cnt, p.id, p.name, p.city) group by p.city order by count(*);