【问题标题】:How to add a OrderBy in Jooq for a Routine?如何在 Jooq 中为例程添加 OrderBy?
【发布时间】:2013-12-04 01:25:53
【问题描述】:

我正在使用下面的代码

Transaction transaction = Transaction.current();
        SelectQuery<Record> selectQuery = transaction.selectQuery();
        selectQuery.addSelect(Folder.FOLDER.FOLDER_RSN, Routines.fFoldernumber(Folder.FOLDER.FOLDER_RSN).as("FolderNumber"),
                Folder.FOLDER.FOLDER_NAME, Folder.FOLDER.FOLDER_TYPE);
selectQuery.addFrom(FolderPeople.FOLDER_PEOPLE);

现在我想在FolderNumber 上添加 OrderBy 类似下面的内容

selectQuery.addOrderBy("FolderNumber")

上述情况如何添加OrderBy?

【问题讨论】:

    标签: java sql stored-procedures jooq


    【解决方案1】:

    jOOQ生成的存储函数实现了org.jooq.Field,所以你可以简单地将它们添加到ORDER BY子句中:

    selectQuery.addOrderBy(fFoldernumber(...));
    

    您可能还想考虑为存储的函数调用创建本地引用,而不是重复整个调用:

    Field<?> folder = Routines.fFoldernumber(Folder.FOLDER.FOLDER_RSN).as("FolderNumber");
    // ...
    selectQuery.addSelect(..., folder);
    selectQuery.addOrderBy(folder);
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-21
    • 1970-01-01
    • 2014-11-10
    • 2013-11-08
    • 2018-03-22
    • 2023-03-17
    相关资源
    最近更新 更多