您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何按最大日期和组同时获取Grails中的记录

如何按最大日期和组同时获取Grails中的记录

如果您使用的是Grails 2.0或更高版本,则可以使用分离的条件来执行此操作:

def colors = Color.withCriteria {
    eq "dateCreated", new grails.gorm.DetachedCriteria(Color).build {
        projections {
            min "dateCreated"
        }
    }

    projections {
        property "name"
        property "shade"
        property "dateCreated"
    }
}

DetachedCriteria该类的显式使用有点丑陋,但还算不错。该查询也可以作为Where查询使用,但是似乎存在一个错误,这意味着您不能对聚合函数使用’==’。修复错误后,您应该可以执行以下操作:

def colors = Color.where {
    dateCreated == max(dateCreated)
}.property("name").property("shade").property("dateCreated").list()

请注意,用’<’替换’==’可以正常工作。

其他 2022/1/1 18:17:09 有482人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶