繁体   English   中英

在grails中使用HibernateCriteriaBuilder从createCriteria中提取所有字段

[英]extracting all fields from createCriteria using HibernateCriteriaBuilder in grails

我正在休眠创建条件查询中的group by子句中对数字字段的总和进行查询。 我需要另一列- seriesType从输出resultlist域类,但现在如果我添加术语property('seriesType')中的突起与grouProperty()行以来我得到一个异常说not a group by clause could not execute query

不确定如何将字段与结果中的其他两个字段合并在一起,这是我的标准

dataMap = BehaviorProfile.createCriteria().list {
                    globalUser{
                        eq('id',empid2)
                    }

                    projections{
                       sum('frequency', 'tfreq')
                       groupProperty('dayofweek')
                    // if I add property('seriesType') here the criteria throws an exception
                    }

                }

您需要添加groupProperty('seriesType')而非property('seriesType') 当您对某个属性A进行分组并使用聚合函数(以您的情况为总和)时,您将不能仅在侧面输出其他属性B,因为B的前置操作中也可能有很多值。

例如,在您的dayofweek = 2聚合组中,总和为150,并且存在三种可能的seriesTypes-siereA,serieB和serieC。 因此,您需要执行以下操作:仅按dayofweek分组或将seriesTypes分组添加到查询中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM