首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

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

2012-05-10 
HQL统计查询无效?项目使用Spring和hibernate首先:List listPlanInfo getHibernateTemplate().find(sele

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();

这样就可以得到查询出来的记录条数了

热点排行