From a8ffd253aa2d1a34b27127559195db82e34adb58 Mon Sep 17 00:00:00 2001 From: Knut Wannheden Date: Fri, 30 Aug 2019 13:40:30 +0200 Subject: [PATCH] [jOOQ/jOOQ#9111] Support parsing COUNT(DISTINCT (A, B)) Dialects like H2 and PostgreSQL allow row value expressions following the `DISTINCT` keyword. --- jOOQ/src/main/java/org/jooq/impl/ParserImpl.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java b/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java index dc2688c511..3e68f6b464 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java @@ -8713,12 +8713,17 @@ final class ParserImpl implements Parser { else return count(); + boolean parens = parseIf(ctx, '('); + QualifiedAsterisk asterisk = parseQualifiedAsteriskIf(ctx); List> fields = (asterisk == null) ? distinct ? parseFields(ctx) : Collections.>singletonList(parseField(ctx)) : null; + + if (parens) + parse(ctx, ')'); parse(ctx, ')'); if (distinct)