[#8593] The row_number emulation is only needed in the pro editions
This commit is contained in:
parent
b61f2d0c9b
commit
8ede6ac357
@ -89,8 +89,6 @@ import static org.jooq.impl.Term.MODE;
|
||||
import static org.jooq.impl.Term.PRODUCT;
|
||||
import static org.jooq.impl.Term.ROW_NUMBER;
|
||||
import static org.jooq.impl.Tools.castIfNeeded;
|
||||
import static org.jooq.impl.Tools.BooleanDataKey.DATA_RANKING_FUNCTION;
|
||||
import static org.jooq.impl.Tools.BooleanDataKey.DATA_ROWNUMBER_FUNCTION;
|
||||
import static org.jooq.impl.Tools.DataKey.DATA_WINDOW_DEFINITIONS;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
@ -124,6 +122,7 @@ import org.jooq.WindowPartitionByStep;
|
||||
import org.jooq.WindowRowsAndStep;
|
||||
import org.jooq.WindowRowsStep;
|
||||
import org.jooq.WindowSpecification;
|
||||
import org.jooq.impl.Tools.BooleanDataKey;
|
||||
// ...
|
||||
|
||||
/**
|
||||
@ -460,7 +459,7 @@ class Function<T> extends AbstractField<T> implements
|
||||
.visit(K_OVER)
|
||||
.sql(' ');
|
||||
|
||||
previousRanking = (Boolean) ctx.data(DATA_RANKING_FUNCTION, ranking);
|
||||
previousRanking = (Boolean) ctx.data(BooleanDataKey.DATA_RANKING_FUNCTION, ranking);
|
||||
|
||||
|
||||
|
||||
@ -468,9 +467,9 @@ class Function<T> extends AbstractField<T> implements
|
||||
ctx.visit(window);
|
||||
|
||||
if (TRUE.equals(previousRanking))
|
||||
ctx.data(DATA_RANKING_FUNCTION, previousRanking);
|
||||
ctx.data(BooleanDataKey.DATA_RANKING_FUNCTION, previousRanking);
|
||||
else
|
||||
ctx.data().remove(DATA_RANKING_FUNCTION);
|
||||
ctx.data().remove(BooleanDataKey.DATA_RANKING_FUNCTION);
|
||||
|
||||
|
||||
|
||||
|
||||
@ -62,8 +62,6 @@ import static org.jooq.impl.Keywords.K_PARTITION_BY;
|
||||
import static org.jooq.impl.Keywords.K_PRECEDING;
|
||||
import static org.jooq.impl.Keywords.K_UNBOUNDED_FOLLOWING;
|
||||
import static org.jooq.impl.Keywords.K_UNBOUNDED_PRECEDING;
|
||||
import static org.jooq.impl.Tools.BooleanDataKey.DATA_RANKING_FUNCTION;
|
||||
import static org.jooq.impl.Tools.BooleanDataKey.DATA_ROWNUMBER_FUNCTION;
|
||||
import static org.jooq.impl.WindowSpecificationImpl.Exclude.CURRENT_ROW;
|
||||
import static org.jooq.impl.WindowSpecificationImpl.Exclude.GROUP;
|
||||
import static org.jooq.impl.WindowSpecificationImpl.Exclude.NO_OTHERS;
|
||||
@ -87,6 +85,7 @@ import org.jooq.WindowSpecificationFinalStep;
|
||||
import org.jooq.WindowSpecificationOrderByStep;
|
||||
import org.jooq.WindowSpecificationPartitionByStep;
|
||||
import org.jooq.WindowSpecificationRowsAndStep;
|
||||
import org.jooq.impl.Tools.BooleanDataKey;
|
||||
|
||||
/**
|
||||
* @author Lukas Eder
|
||||
@ -181,7 +180,7 @@ final class WindowSpecificationImpl extends AbstractQueryPart implements
|
||||
|
||||
|
||||
|
||||
else if (TRUE.equals(ctx.data(DATA_RANKING_FUNCTION)) && REQUIRES_ORDER_BY_IN_RANKING.contains(ctx.family())) {
|
||||
else if (TRUE.equals(ctx.data(BooleanDataKey.DATA_RANKING_FUNCTION)) && REQUIRES_ORDER_BY_IN_RANKING.contains(ctx.family())) {
|
||||
ctx.sql(glue)
|
||||
.visit(K_ORDER_BY).sql(' ')
|
||||
.visit(field(select(one())));
|
||||
|
||||
Loading…
Reference in New Issue
Block a user