开发者社区 问答 正文

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

我想使用REGEXP_REPLACEsql函数(我以Postgres为目标),但是在快速检查DSLJOOQ中的类之后,似乎还没有公开。

我应该如何解决添加新功能的问题?

  • 我可以尝试扩展AbstractFunction,类似于org.jooq.impl.Replace
  • 还有没有其他更通用的方法来调用JOOQ的DSL未公开的功能?

问题来源:Stack Overflow

展开
收起
montos 2020-03-27 13:31:02 483 分享 版权
1 条回答
写回答
取消 提交回答
  • 使用普通的SQL模板

    public static Field<String> regexpReplace(
        Field<String> in, String pattern, String replacement
    ) {
        return DSL.field(
            "regexp_replace({0}, {1}, {2})", in.getDataType(), 
            in, 
            DSL.val(pattern), 
            DSL.val(replacement)
        );
    }
    

    回答来源:Stack Overflow

    2020-03-27 13:31:38
    赞同 展开评论
问答分类:
问答标签:
问答地址: