From e15968091dab8d50cf7e1c112c1b5f3aa26eaf64 Mon Sep 17 00:00:00 2001 From: lukaseder Date: Wed, 14 Mar 2018 12:14:52 +0100 Subject: [PATCH] [#7171] [#7292] Add support for parsing TO_CHAR() --- jOOQ/src/main/java/org/jooq/impl/ParserImpl.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java b/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java index 7fb2aa8309..c32b224d04 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java @@ -4310,6 +4310,8 @@ final class ParserImpl implements Parser { return field; else if ((field = parseFieldTranslateIf(ctx)) != null) return field; + else if ((field = parseFieldToCharIf(ctx)) != null) + return field; if (N.is(type)) if (parseFunctionNameIf(ctx, "TANH")) @@ -5034,6 +5036,17 @@ final class ParserImpl implements Parser { return null; } + private static final Field parseFieldToCharIf(ParserContext ctx) { + if (parseFunctionNameIf(ctx, "TO_CHAR")) { + parse(ctx, '('); + Field f1 = (Field) parseField(ctx); + parse(ctx, ')'); + return cast(f1, SQLDataType.VARCHAR); + } + + return null; + } + private static final Field parseFieldToNumberIf(ParserContext ctx) { if (parseFunctionNameIf(ctx, "TO_NUMBER")) { parse(ctx, '(');