前言
今天继续学习了HQL的聚合函数,特别需要注意的是,
之前在HQL写查询的时候不允许有 * ,现在聚合函数里可以有 * 。
还有一个number的对象,好像数字都可以接收,小数和整数都可以,是父类,有空可以研究
分析
现在贴出聚合函数的适用代码
/**
* 聚合函数:求数量
*/
@Test
public void run11(){
Session session = HibernateUtils.getCurrentSession();
Transaction tr = session.beginTransaction();
// 查询的所有的联系人的数量
List<Number> list = session.createQuery("select sum(lkm_id) from Linkman l").list();
// 通过下标值取值
Long count = list.get(0).longValue();
System.out.println("数量:"+count);
tr.commit();
}
/**
* 聚合函数
*/
@Test
public void run10(){
Session session = HibernateUtils.getCurrentSession();
Transaction tr = session.beginTransaction();
// 查询的所有的联系人的数量
List<Number> list = session.createQuery("select count(l) from Linkman l").list();
// 通过下标值取值
Long count = list.get(0).longValue();
System.out.println("数量:"+count);
tr.commit();
}
/**
* 聚合函数:count() sum() avg() max() min()
*/
@Test
public void run9(){
Session session = HibernateUtils.getCurrentSession();
Transaction tr = session.beginTransaction();
// 查询的所有的联系人的数量
List<Number> list = session.createQuery("select count(*) from Linkman").list();
// 通过下标值取值
Long count = list.get(0).longValue();
System.out.println("数量:"+count);
tr.commit();
}