Java 如何在Hibernate查询的结果集中获取浮点值?
我有以下疑问Java 如何在Hibernate查询的结果集中获取浮点值?,java,spring,hibernate,grails,Java,Spring,Hibernate,Grails,我有以下疑问 select sum(r.score)/count(r) from Rating as r group by r.item order by sum(r.score)/count(r) desc 我的问题是hibernate将结果sumr.score/countr四舍五入 如何强制Hibernate返回结果的浮点值 如果您只想找到一个平均值,那么您可以使用聚合函数,该函数总是返回一个Double 若你们只需要寻找一个平均值,那个么你们可以使用聚合函数,它总是返回一
select sum(r.score)/count(r) from Rating as r
group by r.item
order by sum(r.score)/count(r) desc
我的问题是hibernate将结果sumr.score/countr四舍五入
如何强制Hibernate返回结果的浮点值 如果您只想找到一个平均值,那么您可以使用聚合函数,该函数总是返回一个Double
若你们只需要寻找一个平均值,那个么你们可以使用聚合函数,它总是返回一个Double avg最适合这种情况。对于要转换为双精度的一般情况,可以使用CAST:
select sum(r.score) / (CAST (count(r) AS DOUBLE PRECISION)) from Rating as r
group by r.item
order by sum(r.score) / (CAST (count(r) AS DOUBLE PRECISION)) desc
avg最适合这种情况。对于要转换为双精度的一般情况,可以使用CAST:
select sum(r.score) / (CAST (count(r) AS DOUBLE PRECISION)) from Rating as r
group by r.item
order by sum(r.score) / (CAST (count(r) AS DOUBLE PRECISION)) desc
如果我需要浮动,在其他情况下应该做什么?如果需要,可以对整个结果使用CAST-as-float。CASTsumr.score/countr作为float@confile。我也同意Nathan的观点。如果我需要浮动,在其他情况下应该怎么做?如果需要,你可以使用CAST as float处理整个结果。CASTsumr.score/countr作为float@confile。我也同意内森的看法。