Я использую следующий код для извлечения данных из таблиц
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 из таблицы вместе с количеством и суммой?