Как суммировать и группировать несколько столбцов из базы данных Postgresql с использованием ограничений критериев?

#java #postgresql

Вопрос:

У меня есть таблица strStat в базе данных, я хочу суммировать 2 столбца и сгруппировать их.Для этого я написал этот сценарий:

 select str_id , sum(count),sum(max_count) from str_stat group by str_id ,count,max_count;   

И я не могу найти, как это реализовать с помощью hibernate.Я видел , что с этим было сделано createCriteria , но теперь он пишет, что это уже устарело .Как мне реализовать такой сценарий?

я написал такую функцию, но она не работает:

 public Listlt;Object[]gt; getSumAndGroupByStats() {  CriteriaBuilder builder = sessionFactory.getCriteriaBuilder();  CriteriaQuerylt;Object[]gt; query = builder.createQuery(Object[].class);  Rootlt;strStatgt; product = query.from(strStat.class);  query.multiselect(  product.get("strId"),  product.get("count"),  product.get("maxCount"),  builder.lt;Integergt;sum(product.lt;Integergt; get("count")),  builder.lt;Integergt;sum(product.lt;Integergt; get("maxCount")));   query.groupBy(product.get("strId"));  query.groupBy(product.get("count"));  query.groupBy(product.get("maxCount"));  return sessionFactory.getCurrentSession().createQuery(query).getResultList();  }