hql 先排序 再limit 解决方法 (求教)

如题!谢谢!

先 order by 再 limit

[quote]hql 是传进来的参数 hql 先写的是order by 然后执行下面的 但是先执行的limit 才执行 orderby的
Query q=this.createQuery(hql);
//查询总记录数
long count=this.getCout(hql, args);

for (int i = 0; i < args.length; i++) {
q.setParameter(i, args[i]);
}
//设置起始值
q.setFirstResult((page.getPage()-1)*page.getRecords());
//设置查询的条数
q.setMaxResults(page.getRecords());[/quote]
按道理直接order by,再设limit,不会出现你说的情况的啊。。

[code="java"]hql = "from User u where u.age =:age order by u.name desc";
Query q=this.createQuery(hql);
q.setParameter("age", 10);
q.setFirstResult((page.getPage()-1)*page.getRecords());
q.setMaxResults(page.getRecords());[/code]