hibernate使用group by,having实现统计功能

       最近需要在界面实现用户登录统计功能,实现在某个时间段,登录人数范围 ,最后登录时间 查询出相应的记录

用到了group by 和having

hql语句如下,

Object[] pramas ={ timeBegin ,timeEnd,mincount ,maxcount};
   return syslogDao.findForPage("select username ,count(id) , max(createtime) from  Syslog " +
     " where  createtime > ? and createtime < ? " +
     "group by username having count(id) > ? and count(id) < ?", pramas ,pageSize ,page);

 

前台使用struts2标签取值,需要注意定义id="list"

 

<s:iterator value="pageBean.list" status ="index" id="list">

 用户名: <s:property value="#list[0]"/>
 
登录次数:<s:property value="#list[1]"/>
 最后登录时间: <s:date name="#list[2]" format="yyyy-MM-dd HH:mm:ss"/>
  </s:iterator>

你可能感兴趣的:(hibernate使用group by,having实现统计功能)