Sugerowałbym utworzenie klasy POJO tylko do przechowywania wyników tego zapytania:
package com.mypackage;
public class CustomerAmountResult{
private String surname;
private BigDecimal amountSum;
public CustomerAmountResult(String surname, BigDecimal amountSum){
this.surname = surname;
this.amountSum = amountSum;
}
// getters / setters
}
Następnie zmień zapytanie na następujące:
@Query("select NEW com.mypackage.CustomerAmountResult(
o.customer.surname, sum(o.amount))
from Order as o
group by o.customer.surname")
List<CustomerAmountResult> findCustomersBySumOfAmount();
Dzięki temu nie będziesz musiał ręcznie analizować zestawu wyników.