如题Query.setMaxResults(int);//只能设置最多总数
但我想获得每组前十,
比如多种不同的商品根据商品类型分组,根据每种商品购买量或客户评价排序之后,得到每类商品排名前十的商品。假设共三类商品,每类100种,如何获得这三类商品的各前十名

解决方案 »

  1.   

    select * from ( select count(*) count from table group by ...) a where a.count>10 
      

  2.   

    我记得hql子查询,只能出现在select和where中,其他的出错
      

  3.   

    ARC逻辑不对啊
    我要的不是每组总数目大于10的,而是分组排序后每组前十geovil
    明显不知所谓嘛
    哪有那么简单。当然如果用union就能完成了,有没有不用union,一条hql查出来的
      

  4.   

    用hql除非分着写否则实现起来是很困难的,因为hql是不支持UNION的
    建议楼主还是用sql吧
      

  5.   

    建议使用 SQL 吧  反正Hibernate 也支持SQL 
      

  6.   

    建议 看一下这个网址:http://baike.baidu.com/view/1257019.htm
         不好实现该功能,使用SQL