GrailsGroupProperty和order。它是如何工作的?

GrailsGroupProperty和order。它是如何工作的?,grails,gorm,ora-00979,Grails,Gorm,Ora 00979,我有这个域名: class Participation { ParticipationStatus status } class ParticipationStatus{ String name Date creationDate } 我创建一个查询: Participation.createCriteria().list{ createAlias("status","statusAlias") order "statusAlias.creationDate"

我有这个域名:

class Participation {
   ParticipationStatus status
}
class ParticipationStatus{
   String name
   Date creationDate
}
我创建一个查询:

Participation.createCriteria().list{
   createAlias("status","statusAlias")
   order "statusAlias.creationDate"
   projections{
     groupProperty "id"    
   }
}
但我收到了一个错误: 导致原因:java.sql.SQLException:ORA-00979:N'est pas unie表达式组由

我两天前正在处理这个查询grrrr!;-)


非常感谢

在聚合查询中使用的每个字段(使用
投影的字段)应该是
组属性
,或者只是聚合函数参数(也就是说,在
投影
中)。 在本例中,请尝试

Participation.createCriteria().list{
   createAlias("status","statusAlias")
   order "statusAlias.creationDate"
   projections{
     groupProperty "id"    
     groupProperty "statusAlias.creationDate"
   }
}

谢谢我尝试了这个方法,但效果很好,结果是[[1,date object],[2,dateobject]],并且只希望接收[1,2](仅ID),如果您使用的是
分组方式
,则无法接收。分组会打破记录的原始顺序,因此您可以仅对结果数据集进行排序,并且需要为此添加日期字段。奥托,你需要分组吗?如果
id
是Grails的
id
,那么它无论如何都是唯一的。