如何在JOOQ中使用toChar函数?

时间:2013-11-08 09:38:59

标签: java sql jooq

我必须在toChar()中使用JOOQ功能吗?现在我使用下面的代码

 TO_CHAR(PaymentDate, 'YYYY-MM-DD') <= TO_CHAR(SYSDATE,'YYYY-MM-DD')");

我必须转换为JOOQ。如何在JOOQ中使用它?

1 个答案:

答案 0 :(得分:4)

jOOQ 3.2未明确支持Oracle的TO_CHAR()功能。我已为此添加了一项功能请求:#2832

与此同时,您将不得不求助于纯SQL as documented in the manual。例如,你可以写:

// Create reusable fields:
Field<String> f = DSL.field(
    "TO_CHAR({0}, 'YYYY-MM-DD')", String.class, T.PaymentDate);

// Create reusable conditions:
Condition c = DSL.condition(
    "TO_CHAR({0}, 'YYYY-MM-DD') <= TO_CHAR(SYSDATE, 'YYYY-MM-DD')", 
    T.PaymentDate);

请注意,{0}是对DSL.condition(String, QueryPart...)的第一个QueryPart参数的引用,例如。