jOOQ:如何在选择查询中调用 Sql 用户定义函数

Posted

技术标签:

【中文标题】jOOQ:如何在选择查询中调用 Sql 用户定义函数【英文标题】:jOOQ: How to call Sql User defined Function Within Select Query 【发布时间】:2013-11-07 02:09:23 【问题描述】:

我必须使用jOOQ 中的函数调用来执行Select 查询怎么办?我必须编写这种类型的 jOOQ Query。

Select Cola,col2,Col3, f_feeAmount(arg) col4 from SomeTable  

如何为此编写 jOOQ 代码?

SelectQuery<Record> selectQueryFee = transRefundFee.selectQuery();
selectQueryFee.addSelect(AccountBillFee.ACCOUNT_BILL_FEE.ACCOUNT_BILL_FEE_RSN,AccountBill.ACCOUNT_BILL.BILL_NUMBER,AccountBill.ACCOUNT_BILL.PAYMENT_OPTION);
selectQueryFee.addSelect(f_feeAmount(arg));

f_feeAmount 无法被 jOOQ 识别,因为它是用户定义的函数。

【问题讨论】:

你试过找教程吗? 是的,我知道如何编写简单的查询,但功能看起来有些问题 我想这会对你有所帮助***.com/questions/11896538/jooq-aggregate-functions 看我编辑了我的问题 【参考方案1】:

用户定义的函数在Routines 类中生成。您可以从该类中静态导入所有方法:

import static com.example.generated.Routines.*;

然后,写f_feeAmount(arg) 应该没问题。

另请参阅 jOOQ 手册中有关 generated global artefacts 的这一页。

【讨论】:

以上是关于jOOQ:如何在选择查询中调用 Sql 用户定义函数的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server 用户定义函数返回表——不能从选择查询中调用它

SQL 方言如何在 hibernate 和 JOOQ 等框架内部实际工作

如何从 SQL 查询配置 jOOQ 可嵌入类型

如何在 JOOQ 中公开新的 SQL 函数

如何查看 jOOQ 在编译时执行的 SQL 语句?

如何在JOOQ中公开新的SQL函数