我必须在toChar()
中使用JOOQ
功能吗?现在我使用下面的代码
TO_CHAR(PaymentDate, 'YYYY-MM-DD') <= TO_CHAR(SYSDATE,'YYYY-MM-DD')");
我必须转换为JOOQ
。如何在JOOQ
中使用它?
答案 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
参数的引用,例如。