Hibernate -- 使用Hibernate获取最大值(max)的三种方法

使用Hibernate获取最大值(max)的三种方法

获取最大值的三种方法:

1.使用hsql

Integerc=(Integer)dbt.getSession().createQuery("selectmax(a.ArticleId)fromArticlea").uniqueResult();

System.out.println(c);

注意:要加上别名“a”,a.ArticleId注意大小写!否则会出现"无法解释的属性"错误!

2.使用nativesql

sql="selectmax(articleid)maxidfromljarticle";

maxId=(Integer)(session.createSQLQuery(sql).addScalar("maxId",Hibernate.INTEGER)).uniqueResult();

注意:要加上“maxid”标量

3.使用criteria

Integerc=(Integer)dbt.getSession().createCriteria(Article.class)

.setProjection(Projections.projectionList().add(Projections.max("ArticleId")))

.uniqueResult();

同样要注意ArticleId是区分大小写的!

相关推荐