大家好,我在 HQL语句中执行 case when 语句出错,难道hibernate 不支持吗??
我的语句是:
// 功能是统计出 2 个总数结果:
// 1. 所有用户的总数
// 2. 所有年龄在20 到 30 之间的用户总数String hql = "select count(*) as count1, count(case when age between 20 and 30 then name end) as count2 from User";
List countList = session.createQuery(hql);
if(countList != null && countList.size()>0){
Object[] countObj = (Object[]) countList.get(0);System.out.println("count1 = "+countObj[0]+" , count2 = "+countObj[1]);
}
Query query = session.createSQLQuery(sql)
你用纯sql语句执行就可以了
在Hibernate3.1中可以执行case语法