diff --git a/jOOQ/src/main/java/org/jooq/OrderedAggregateFunctionOfDeferredType.java b/jOOQ/src/main/java/org/jooq/OrderedAggregateFunctionOfDeferredType.java index 4703078580..b875f61f36 100644 --- a/jOOQ/src/main/java/org/jooq/OrderedAggregateFunctionOfDeferredType.java +++ b/jOOQ/src/main/java/org/jooq/OrderedAggregateFunctionOfDeferredType.java @@ -38,6 +38,7 @@ package org.jooq; // ... +import static org.jooq.SQLDialect.H2; import static org.jooq.SQLDialect.POSTGRES_9_4; /** @@ -69,6 +70,6 @@ public interface OrderedAggregateFunctionOfDeferredType { * Add an WITHIN GROUP (ORDER BY ..) clause to the ordered * aggregate function */ - @Support({ POSTGRES_9_4 }) + @Support({ H2, POSTGRES_9_4 }) AggregateFilterStep withinGroupOrderBy(OrderField field); } diff --git a/jOOQ/src/main/java/org/jooq/impl/DSL.java b/jOOQ/src/main/java/org/jooq/impl/DSL.java index afaa7e399d..b1312184da 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DSL.java +++ b/jOOQ/src/main/java/org/jooq/impl/DSL.java @@ -17837,7 +17837,7 @@ public class DSL { /** * The mode(field) aggregate function. */ - @Support({ POSTGRES_9_4 }) + @Support({ H2, POSTGRES_9_4 }) public static AggregateFunction mode(Field field) { return new org.jooq.impl.Function(Term.MODE, nullSafeDataType(field), field); } @@ -17845,7 +17845,7 @@ public class DSL { /** * Get the median over a numeric field: median(field). */ - @Support({ CUBRID, HSQLDB, MARIADB, POSTGRES_9_4 }) + @Support({ CUBRID, H2, HSQLDB, MARIADB, POSTGRES_9_4 }) public static AggregateFunction median(Field field) { return new org.jooq.impl.Function(Term.MEDIAN, SQLDataType.NUMERIC, nullSafe(field)); } @@ -18155,7 +18155,7 @@ public class DSL { * The mode() within group (oder by [order clause]) ordered * aggregate function. */ - @Support({ POSTGRES_9_4 }) + @Support({ H2, POSTGRES_9_4 }) public static OrderedAggregateFunctionOfDeferredType mode() { return new Mode(); } diff --git a/jOOQ/src/main/java/org/jooq/impl/Function.java b/jOOQ/src/main/java/org/jooq/impl/Function.java index eb749a3e0d..535f38a9b4 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Function.java +++ b/jOOQ/src/main/java/org/jooq/impl/Function.java @@ -239,7 +239,7 @@ class Function extends AbstractField implements - else if (term == MODE && ( ctx.family() == POSTGRES)) { + else if (term == MODE && ( ctx.family() == H2 || ctx.family() == POSTGRES)) { ctx.visit(mode().withinGroupOrderBy(DSL.field("{0}", arguments.get(0)))); } else if (term == MEDIAN && ( ctx.family() == POSTGRES)) {