聚集函数查询:
l count(*)
l avg(...)
l sum(...)
l min(...)
l max(...)
l count(...)
例子代码如下:
|
/** * 统计查询 */ public class StatQueryTest extends TestCase {
public void testQuery1() { Session session = null; try { session = HibernateUtils.getSession(); session.beginTransaction(); Long count = (Long)session.createQuery ("select count(*) from Student").uniqueResult(); System.out.println(count);
session.getTransaction().commit(); }catch(Exception e) { e.printStackTrace(); session.getTransaction().rollback(); }finally { HibernateUtils.closeSession(session); } } public void testQuery2() { Session session = null; try { session = HibernateUtils.getSession(); session.beginTransaction(); List students =session.createQuery ("select c.name, count(s) from Student s join s.classes c " +"group by c.name order by c.name").list(); for (Iterator iter=students.iterator(); iter.hasNext();) { Object[] obj = (Object[])iter.next(); System.out.println(obj[0] + ", " + obj[1]); } session.getTransaction().commit(); }catch(Exception e) { e.printStackTrace(); session.getTransaction().rollback(); }finally { HibernateUtils.closeSession(session); } } } |

本文介绍如何使用Hibernate框架执行各种统计查询,包括总数、平均数等,并提供了具体代码示例来展示如何实现这些查询。
391

被折叠的 条评论
为什么被折叠?



