6

hibernate HQL 查询是否支持使用 select min、max、count 和其他 sql 函数?

像:

select min(p.age) from person p

谢谢

4

3 回答 3

12

是的min()max()count()在 HQL 中受支持。

请参阅Hibernate Doc 中的聚合函数

于 2008-12-01T14:01:33.910 回答
5

这就是我在 Hibernate 中使用 max 的方式:

public long getNextId(){
long appId;         
try{
            Session session = HibernateUtil.getAdmSessionFactory().getCurrentSession();
            Transaction t = session.beginTransaction();
            String sequel = "Select max(JAdmAppExemptionId) from JAdmAppExemption";
            Query q = session.createQuery(sequel);
            List currentSeq = q.list();
            if(currentSeq == null){
                return appId;
            }else{
            appId = (Long)currentSeq.get(0);
            return appId+1;
            }

        }catch(Exception exc){
            System.out.print("Unable to get latestID");
            exc.printStackTrace();

        }
        return 0;

    }
于 2010-07-01T06:36:23.343 回答
2

支持一些聚合函数:查看手册

于 2008-12-01T13:59:04.213 回答