当前位置: 代码迷 >> J2EE >> HQL 统计查询无效?解决办法
  详细解决方案

HQL 统计查询无效?解决办法

热度:54   发布时间:2016-04-22 01:31:26.0
HQL 统计查询无效?
项目使用Spring和hibernate

首先:List listPlanInfo = getHibernateTemplate().find("select useYear from plan_year");
这个是可以的,能从plan_year这个对象中查出数据.

但是:
List listPlanInfo = getHibernateTemplate().find("select count(*) from plan_year");

为啥查不出结果,也不抛异常? 后天打印出的hql语句只有一半:
Hibernate: select count(*) as col_0_0_ from plan_year yearplan0_

测试发现所有与统计有关的语句都是这样.. 求指点!!

------解决方案--------------------
用createQuery("select count(*) from plan_year")试试,这个应该可以
long count = (Long)session.createQuery("select count(*) from plan_year").list();
------解决方案--------------------
Query query = session.createQuery(hql);
if(values != null){
for(int i=0;i<values.length;i++){
query.setParameter(i, values[i]);
}
}
return query.uniqueResult();

你试试
------解决方案--------------------
应该这样用:
long countLong = (Long)session.createQuery("select count(tt) from plan_year tt").uniqueResult();

这样就可以得到查询出来的记录条数了
  相关解决方案