From c790c84d994e188137bcd0aecb84b3767cb62758 Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Tue, 31 Mar 2020 15:39:46 +0200 Subject: [PATCH] [jOOQ/jOOQ#9930] Fixed ListAgg for SQL Server --- .../main/java/org/jooq/impl/DefaultAggregateFunction.java | 2 +- jOOQ/src/main/java/org/jooq/impl/ListAgg.java | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/jOOQ/src/main/java/org/jooq/impl/DefaultAggregateFunction.java b/jOOQ/src/main/java/org/jooq/impl/DefaultAggregateFunction.java index ce8c08e962..32b7efa2dc 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DefaultAggregateFunction.java +++ b/jOOQ/src/main/java/org/jooq/impl/DefaultAggregateFunction.java @@ -125,7 +125,7 @@ class DefaultAggregateFunction extends AbstractAggregateFunction { /** * Render WITHIN GROUP (ORDER BY ..) clause */ - private final void acceptWithinGroupClause(Context ctx) { + final void acceptWithinGroupClause(Context ctx) { if (withinGroupOrderBy != null) { ctx.sql(' ').visit(K_WITHIN_GROUP) .sql(" (").visit(K_ORDER_BY).sql(' '); diff --git a/jOOQ/src/main/java/org/jooq/impl/ListAgg.java b/jOOQ/src/main/java/org/jooq/impl/ListAgg.java index f8c8108b07..dede52bf34 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ListAgg.java +++ b/jOOQ/src/main/java/org/jooq/impl/ListAgg.java @@ -51,6 +51,7 @@ import static org.jooq.SQLDialect.POSTGRES; import static org.jooq.SQLDialect.SQLITE; // ... // ... +// ... import static org.jooq.impl.Keywords.F_CONCAT; import static org.jooq.impl.Keywords.F_SUBSTR; import static org.jooq.impl.Keywords.F_XMLAGG; @@ -110,6 +111,10 @@ final class ListAgg extends DefaultAggregateFunction { else if (SUPPORT_STRING_AGG.contains(ctx.dialect())) { acceptStringAgg(ctx); acceptFilterClause(ctx); + + + + acceptOverClause(ctx); } @@ -169,6 +174,9 @@ final class ListAgg extends DefaultAggregateFunction { else ctx.sql(", ''"); + + + acceptOrderBy(ctx); ctx.sql(')'); }