本帖最后由 XZ_QIN 于 2009-08-27 12:33:12 编辑

解决方案 »

  1.   

    List <Jjjzcz> list this.getSession().createSQLQuery(hql) ....
    至少要来个强制转换吧
      

  2.   

    LS的兄弟。后面已经转了.   
      .list();
      

  3.   

    String hql = " 
    select distinct t1.jjdm jjdm,t1.dwjz dwjz,t1.fsrq fsrq,t1.ljjz ljjz 
    from Jjjzcz t1,(select t.jjdm,max(fsrq) fsrq 
    from Jjjzcz t where t.jjdm in(jjdm) 
    and t.dwjz is not null 
    t.and scbz=0 and t.gkbz=1 group by t.jjdm) t2 
    where t1.jjdm=t2.jjdm and t1.fsrq=t2.fsrq and t1.dwjz is not null"; 
    这样的hql hibernate执行不了
    你还是用jdbc或ibatis吧!
      

  4.   

    好了。已经成功了。可以执行的。
    String hql =
    "select distinct t1.jjdm,t1.dwjz,t1.fsrq,t1.LJJZ from jjjzcz t1," +
    "(select t.jjdm,max(fsrq) fsrq from jjjzcz t where t.jjdm in ("+jjdm+") and t.dwjz is not null and t.scbz=0 " +
    "and t.gkbz=1 group by t.jjdm) t2 " +
    "where t1.jjdm=t2.jjdm and t1.fsrq=t2.fsrq and t1.dwjz is not null";
    List<Jjjzcz> list = this.getSession().createSQLQuery(hql)
    .addScalar("JJDM",Hibernate.STRING)
    .addScalar("DWJZ", Hibernate.DOUBLE)
    .addScalar("FSRQ",Hibernate.DATE)
    .addScalar("LJJZ", Hibernate.DOUBLE).list();