From ac9aa44b0975a1351650ad3ea85c3a7110d00c04 Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Wed, 7 Jun 2023 18:05:09 +0200 Subject: [PATCH] [jOOQ/jOOQ#15190] DISTINCT .. WITH TIES emulation renders too many DENSE_RANK() OVER (ORDER BY ...) clauses --- .../src/main/java/org/jooq/impl/SelectQueryImpl.java | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java b/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java index 56eb2240c3..0029ea5a3f 100644 --- a/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java @@ -2142,7 +2142,7 @@ final class SelectQueryImpl extends AbstractResultQuery imp private final Field limitWindowFunction(Context c) { return distinct - ? DSL.denseRank().over(orderBy(getNonEmptyOrderByForDistinct(c.configuration()))) + ? DSL.denseRank().over(orderBy(getNonEmptyOrderBy(c.configuration()))) : getLimit().withTies() ? DSL.rank().over(orderBy(getNonEmptyOrderBy(c.configuration()))) : DSL.rowNumber().over(orderBy(getNonEmptyOrderBy(c.configuration()))); @@ -4440,16 +4440,6 @@ final class SelectQueryImpl extends AbstractResultQuery imp return getOrderBy(); } - final SortFieldList getNonEmptyOrderByForDistinct(Configuration configuration) { - SortFieldList order = new SortFieldList(); - order.addAll(getNonEmptyOrderBy(configuration)); - - for (Field field : getSelect()) - order.add(field.asc()); - - return order; - } - @Override public final void addOrderBy(Collection> fields) { getOrderBy().addAll(Tools.sortFields(fields));