查询语句:select count(*),sum(u.cumoney),c.cname from Cuser u inner join u.cellchance c group by c.cname因为它没有对应的javabean,我怎样获取其各个字段的值,封装到vo中呢

解决方案 »

  1.   

    这个问题说得不明白,你用hibernate没?
    如果没有,那要你自己获取List来封装了
      

  2.   


    select new com.psit.struts.entity.Statistic(sa.limUser.userCode,sum(sa.satHtMon),sum(sa.satPaidMon),sum(sa.satCusNum))"+" from SalAllTask as sa where  sa.satDate between '"+date+"' and '"+date2+"'group by sa.limUser.userCode";
      

  3.   

    返回的对象是一个List,List中存放的是一个Object数组,所以要得到具体的每一个值就是遍历List,然后通过下标来得到具体的字段值.
                                                                                                                                                                                                                                                                           
      

  4.   

    String sql="select count(*),sum(u.cumoney),c.cname from Cuser u inner join u.cellchance c group by c.cname";List objs= this.getHibernateTemplate().find(sql);
     
    用list集合接受, 在hql 编辑器中的返回结果:1  32412423  初期沟通2  443435345  立项评估
    .
    .
    .
    请问怎样获取 各字段的值
      

  5.   

    我这里有个类似的查询
    select g.classId, g.className, sum(a.ing) from Grade g, AppraiseClass a where a.classes = g group by g.classId, g.className
      

  6.   

    可能还没说明白:我获取的是:String sql="select count(*),sum(u.cumoney),c.cname from Cuser u inner join u.cellchance c group by c.cname"; 获取的值分别是:count(*) 分组后返回的记录条数
                     sum(u.cumoney) 预期金额总数
                     c.cname  cellchance中的cname 字段没有对应的javabean 
      

  7.   


    肯定用了:
    可能还没说明白: 我获取的是:String sql="select count(*),sum(u.cumoney),c.cname from Cuser u inner join u.cellchance c group by c.cname"; 获取的值分别是:count(*) 分组后返回的记录条数 
                    sum(u.cumoney) 预期金额总数 
                    c.cname  cellchance中的cname 字段 没有对应的javabean 
      

  8.   

    select count(*),sum(u.cumoney),c.cname  from Cuser u, Cellchance c where u.cellchance= c group by  c.cname
    试一试!!!
      

  9.   


    String sql="select count(*),sum(u.cumoney),c.cname from Cuser u inner join u.cellchance c group by c.cname"; List objs= this.getHibernateTemplate().find(sql)
      

  10.   


    不是hql的问题:是不知如何取值的问题:
    请你仔细看下:
    我获取的是:String sql="select count(*),sum(u.cumoney),c.cname from Cuser u inner join u.cellchance c group by c.cname"; 获取的值分别是:count(*) 分组后返回的记录条数 
                    sum(u.cumoney) 预期金额总数 
                    c.cname  cellchance中的cname 字段 没有对应的javabean 
      

  11.   

    各位,这是hibernate的内连接查询
      

  12.   

    这是我一前的一段代码试试看
    public List<AppraiseClass> findTopAppraiseClass() throws HibernateException
    {

    List<AppraiseClass> appraiseClasses = new ArrayList<AppraiseClass>();
    Object[] o = (Object[])execute(new HibernateCallback() { public Object doInHibernate(Session session) throws HibernateException, SQLException {
    // TODO 自动生成方法存根
     Query query = session.createQuery("select g.classId, g.className, sum(a.ing) from Grade g, AppraiseClass a where a.classes = g group by g.classId, g.className");
     return query.list().toArray();
    }
    });

    for (int i = 0; i < o.length; i++) {
    Object [] j = (Object[]) o[i];
    AppraiseClass ac = new AppraiseClass();
    Grade g = new Grade();
    ac.setMarking((Double)j[2]);
    g.setClassName((String)j[1]);
    g.setClassId((Integer)j[0]);
    ac.setClasses(g);
    appraiseClasses.add(ac);
    }
    return appraiseClasses;
      

  13.   

    没有对应的字段,你要新建一个对应实体~这个实体不需要和数据库连接。没有mapping。
    你查询的结果给这个实体的构造函数。