Hibernate Grails GORM投影返回的列数少于预期
我有这个投影我的条件查询:Hibernate Grails GORM投影返回的列数少于预期,hibernate,grails,gorm,Hibernate,Grails,Gorm,我有这个投影我的条件查询: projections{ groupProperty('servey_id') sqlProjection 'sum(is_correct) as score, count(*) as total ', ['score', 'total'], [INTEGER, INTEGER] } 我已经在mysql控制台上运行了查询,希望得到如下结果: [[2,4]] 但我得到的却是:
projections{
groupProperty('servey_id')
sqlProjection 'sum(is_correct) as score, count(*) as total ', ['score', 'total'], [INTEGER, INTEGER]
}
我已经在mysql控制台上运行了查询,希望得到如下结果:[[2,4]] 但我得到的却是:
4 N.B类型正确为布尔值。在mysql中对布尔值求和是可以的,但我不确定在Hibernate中是否可以
有什么解释吗?问题是我在查询条件时遇到了以下问题:
projections{
groupProperty('servey_id')
sqlProjection 'sum(is_correct) as score, count(*) as total ', ['score', 'total'], [INTEGER, INTEGER]
}
resultTransformer org.hibernate.Criteria.DISTINCT\u ROOT\u ENTITY
尽管我不知道这对投影有什么影响。尝试将
debug'org.hibernate.SQL'
添加到log4j.main
中Config.groovy
的块中,以查看生成了什么样的SQL。谢谢,但查询似乎是正确的:选择此.servey\u id为y0,sum(是正确的)作为分数,count(*)作为响应日志[内部联接]中的总数根据这个uu0.servey\u id限制分组?虽然我没有预料到额外的列(这个0.servey\u id),但是您的代码表明您正在尝试确定每次调查的总正确投票数,因此servey\u id
通常是有用的。我想说groupProperty
暗示了这一点。无论如何,我运行了一个类似的查询,它按预期运行:您如何调用该条件块<代码>带标准,创建标准
。。?你能把这段代码贴出来吗?