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
,那么它无论如何都是唯一的。