在HQL中可以使用min()、max()、sum()、avg()、count()和count(*)等统计函数,返回值均为数值类型。如:
Query query = session.createQuery("select min(price) max(price) from Product");
1、在分组中应用统计函数
在HQL语句中配合“group by”子句可以按照指定的属性分组,并应用统计函数。如:
Query query = session.createQuery("select avg(price),count(*) from Product group by category.id");
List<Object[]> values = query.list();
2、使用having
在HQL语句中group by结合having子句可以为分组的数据上添加条件。如:
Query query = session.createQuery("select avg(price),count(*) from Product group by price having price>50.0");
List<Object[]> values = query.list();
Query query = session.createQuery("select min(price) max(price) from Product");
1、在分组中应用统计函数
在HQL语句中配合“group by”子句可以按照指定的属性分组,并应用统计函数。如:
Query query = session.createQuery("select avg(price),count(*) from Product group by category.id");
List<Object[]> values = query.list();
2、使用having
在HQL语句中group by结合having子句可以为分组的数据上添加条件。如:
Query query = session.createQuery("select avg(price),count(*) from Product group by price having price>50.0");
List<Object[]> values = query.list();
转载于:https://blog.51cto.com/wujuxiang/403697