[jOOQ/jOOQ#14303] Add support for INTERSECT ALL and EXCEPT ALL in

MariaDB 10.5
This commit is contained in:
Lukas Eder 2022-11-25 15:44:12 +01:00
parent 6f9e648718
commit 86d94f7252
3 changed files with 9 additions and 5 deletions

View File

@ -53,6 +53,7 @@ import static org.jooq.SQLDialect.IGNITE;
// ...
import static org.jooq.SQLDialect.MARIADB;
// ...
// ...
import static org.jooq.SQLDialect.MYSQL;
// ...
// ...
@ -155,7 +156,7 @@ extends
* {@link StackOverflowError} when generating the SQL.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, HSQLDB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
Select<R> exceptAll(Select<? extends R> select);
/**
@ -181,7 +182,7 @@ extends
* {@link StackOverflowError} when generating the SQL.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, HSQLDB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
Select<R> intersectAll(Select<? extends R> select);
/**

View File

@ -53,6 +53,7 @@ import static org.jooq.SQLDialect.IGNITE;
// ...
import static org.jooq.SQLDialect.MARIADB;
// ...
// ...
import static org.jooq.SQLDialect.MYSQL;
// ...
// ...
@ -160,7 +161,7 @@ public interface SelectUnionStep<R extends Record> extends SelectCorrelatedSubqu
*/
@Override
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, HSQLDB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
SelectOrderByStep<R> exceptAll(Select<? extends R> select);
/**
@ -176,6 +177,6 @@ public interface SelectUnionStep<R extends Record> extends SelectCorrelatedSubqu
*/
@Override
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, HSQLDB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
SelectOrderByStep<R> intersectAll(Select<? extends R> select);
}

View File

@ -88,6 +88,7 @@ import static org.jooq.SQLDialect.MARIADB;
// ...
// ...
// ...
// ...
import static org.jooq.SQLDialect.MYSQL;
// ...
// ...
@ -95,6 +96,7 @@ import static org.jooq.SQLDialect.MYSQL;
// ...
// ...
// ...
// ...
import static org.jooq.SQLDialect.POSTGRES;
// ...
// ...
@ -3184,7 +3186,7 @@ final class SelectQueryImpl<R extends Record> extends AbstractResultQuery<R> imp
private static final Set<SQLDialect> NO_SUPPORT_UNION_PARENTHESES = SQLDialect.supportedBy(SQLITE);
private static final Set<SQLDialect> NO_SUPPORT_CTE_IN_UNION = SQLDialect.supportedBy(HSQLDB, MARIADB);
private static final Set<SQLDialect> UNION_PARENTHESIS = SQLDialect.supportedBy(DERBY, MARIADB);
private static final Set<SQLDialect> UNION_PARENTHESIS = SQLDialect.supportedUntil(DERBY);
final boolean hasUnions() {
return !unionOp.isEmpty();