HQL查询未选择所有记录

时间:2020-03-04 12:05:43

标签: hibernate hql

我正在使用以下代码从表中获取数据

        ArrayList<BillPaidDetails> ar = new ArrayList<BillPaidDetails>();
        tx = session.beginTransaction();
        String hql = "select distinct bpd,count(bpd.id), sum(bpd.amount) "
                +"from BillPaidDetails as bpd "  
                + "left join fetch bpd.billDetails as bd "
                + "where bpd.client.id=:cid "
                + "order by bpd.adddate desc ";

        Query query = session.createQuery(hql);
        query.setParameter("cid", businessId);
        Iterator results = query.list().iterator();

        while (results.hasNext()) {
            Object[] row = (Object[]) results.next();
            BillPaidDetails bp = (BillPaidDetails) row[0];
            Long count = (Long) row[1];
            BigDecimal amount = (BigDecimal) row[2];
            bp.setTotalCount(count);
            bp.setTotalAmount(amount);
            System.out.println(count + " " + amount + " " + bp.getDt());
            ar.add(bd);
        }

它显示正确的计数值和总和。 我想显示所有bpd,但这仅显示了一个。 如何从表中获取所有bpd以及计数和总和?

0 个答案:

没有答案