我的 SQL 查询是“SELECT Productid,FORMAT(AVG(score),2) FROM Product GROUP BY Productid”
我得到的输出为
1001:2.23,
1002:-2.69
在 Hibernate 中,我的查询将是 "SELECT Product.productId,FORMAT(AVG(product.score),2) FROM ProductDAO Product GROUP BY Product.productId"
但是hibernate中不支持格式化函数,有没有办法在hibernate中实现小数精度?
最佳答案
在 Hibernate 中,您可以通过指定小数精度来实现 HBM 映射中的精度和比例属性。
但是在您的情况下,由于您使用的是 AVG 函数,因此上述方法将不起作用。 您可以在 BigDecimal 中收集 AVG(score) 的值并使用 BigDecimal 的 setScale 方法。
aNumber.setScale(2, RoundingMode.HALF_UP);
关于mysql - 如何在 hibernate 中限制小数精度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19264840/