使用hibernate的聚集函数

来源:互联网 发布:伦敦留学 知乎 编辑:程序博客网 时间:2024/06/11 00:28

在HQL查询语句中可以调用的聚集函数:

  • count():统计记录行数
  • min():求最小值
  • max():求最大值
  • sum():求和
  • avg():求平均值

例:

查询记录的行数

Long records=(Long)session.createQuery(select count(t.id) from Tabel as t)        .setMaxResults(1)//如果明确知道结果只有一条记录,这行代码可以省略否则抛出 NonUniqueResultException 异常        .uniqueResult();//结果只有一条,没必要返回List

注意聚集函数的返回类型,如果不确定,可以加以测试,例如:


Object records=session.createQuery(select count(t.id) from Tabel as t)        .setMaxResults(1)        .uniqueResult();System.out.println(records.getClass().getName());


其他内聚函数用法请参照上述代码


原创粉丝点击