Здравствуйте, я пытаюсь получить max, avg, сумму "productCount". Я пишу этот код. Я не могу найти, что сделать, чтобы это исправить.
Запрос к базе данных : select sum(product.PRODUCT_COUNT), avg(product.PRODUCT_COUNT), max(product.PRODUCT_COUNT) from product where product.PRODUCT_COUNT>5;
Java-код :
HibernateTemplate template = getHibernateTemplate();
DetachedCriteria criteria = DetachedCriteria.forClass(Product.class);
ProjectionList projectionList = Projections.projectionList();
projectionList.add(Projections.max("productCount"));
projectionList.add(Projections.avg("productCount"));
projectionList.add(Projections.avg("productCount"));
criteria.add(Restrictions.gt("productCount", 4));
criteria.setProjection(projectionList);
List<?> list = template.findByCriteria(criteria);
System.out.println(list.get(0));
System.out.println(list.get(1));
System.out.println(list.get(2));
Отображение гибернации :
<hibernate-mapping>
<class name="com.i2gether.hibernate.model.Product" table="PRODUCT">
<id name="id" column="ID">
<generator class="native"/>
</id>
<property name="productID" type="string" column="PRODUCT_ID"/>
<property name="productName" type="string" column="PRODUCT_NAME"/>
<property name="productDescription" type="string" column="PRODUCT_DESCRIPTION"/>
<property name="productCount" type="int" column="PRODUCT_COUNT"/>
<property name="buyingDate" type="timestamp" column="BUYING_DATE"/>
</class></hibernate-mapping>
Но я не получил результат, который хотел. Пожалуйста, помогите мне.