0

My SQL query is "SELECT productid,FORMAT(AVG(score),2) FROM product GROUP BY productid"

I am getting output as

1001 : 2.23, 1002 : -2.69

In Hibernate my query will be "SELECT product.productId,FORMAT(AVG(product.score),2) FROM ProductDAO product GROUP BY product.productId"

But the format function not supported in hibernate, is there any way to achieve decimal precision in hibernate?

4

1 回答 1

1

在 Hibernate 中,您可以通过在 hbm 映射中指定精度和比例属性来实现小数精度。

但是在您使用 AVG 功能的情况下,因此上述方法将不起作用。您可以在 BigDecimal 中收集 AVG(score) 的值并使用 BigDecimal 的 setScale 方法。

 aNumber.setScale(2, RoundingMode.HALF_UP);
于 2013-10-09T08:23:23.590 回答