我试图弄清楚如何对Grails 3中的多个字段进行排序,其中之一可能为null,也可能不为null。我有此书籍网域:

class Book {

    String title
    String sortTitle

    static constraints = {
        title blank: false
        sortTitle nullable: true
    }
}

标题为“The Peripheral”的书籍的sortTitle为“Peripheral,The”,否则sortTitle将为null。我希望如果存在的话按sortTitle排序,否则按title排序。

我发现了其他类似的问题,但没有一个可为空的字段。有人碰巧有正确方向的指针吗?

最佳答案

您可以使用:
coalesce(book.sortTitle, book.title)
Here您具有Hibernate的官方文档。

07-24 13:13