欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

hql中不能写count(1)可以写count(a.id)

程序员文章站 2022-05-09 14:35:38
...

hql中不能写count(1)可以写count(a.id)里面写具体的属性 String hql=select new com.haiyisoft.vo.entity.cc.repo.BusinessStat( r.paramName ,t.paramName , + (select nvl(count(1),0) + from com.haiyisoft.entity.cc.busi.Business b,com.haiyisoft.enti

hql中不能写count(1)可以写count(a.id)里面写具体的属性

String hql="select new com.haiyisoft.vo.entity.cc.repo.BusinessStat( r.paramName ,t.paramName , "
+" (select nvl(count(1),0) "
+" from com.haiyisoft.entity.cc.busi.Business b,com.haiyisoft.entity.cc.busi.Application a,com.haiyisoft.entity.cc.busi.Channel c "
+" where b.applicationId=a.id and a.appChannel=c.id "
+" and b.servTime>=to_date('" + bgTime + "','yyyy-mm-dd HH24:mi:ss')"
+" and b.servTime +" and c.channelCode=r.paramCode and substr(b.busiType,0,2)=t.paramCode) as businum)"
+" from "
+" ExtendParamValue r,"
+" ExtendParamValue t"
+" where "
+" r.dimension='CC_CHANNEL_CODE'"
+" and t.dimension='CC_BUSI_TYPE' "
+" and length(t.paramCode)=2"
+" order by r.paramCode,t.paramCode";

一开始写成count(1) 一直出不认识1,一直没在意,整了半天以为别的地方写错了,最后把count(1)变成count(a.id)可以了