diff --git a/jOOQ/src/main/java/org/jooq/Clause.java b/jOOQ/src/main/java/org/jooq/Clause.java index aec6005ae1..dd4891cd36 100644 --- a/jOOQ/src/main/java/org/jooq/Clause.java +++ b/jOOQ/src/main/java/org/jooq/Clause.java @@ -125,6 +125,7 @@ public enum Clause { TABLE_JOIN_OUTER_APPLY, TABLE_JOIN_SEMI_LEFT, TABLE_JOIN_ANTI_LEFT, + TABLE_JOIN_STRAIGHT, TABLE_JOIN_ON, TABLE_JOIN_USING, TABLE_JOIN_PARTITION_BY, diff --git a/jOOQ/src/main/java/org/jooq/impl/JoinTable.java b/jOOQ/src/main/java/org/jooq/impl/JoinTable.java index f9d48947cb..deb4c5124a 100644 --- a/jOOQ/src/main/java/org/jooq/impl/JoinTable.java +++ b/jOOQ/src/main/java/org/jooq/impl/JoinTable.java @@ -57,6 +57,7 @@ import static org.jooq.Clause.TABLE_JOIN_OUTER_LEFT; import static org.jooq.Clause.TABLE_JOIN_OUTER_RIGHT; import static org.jooq.Clause.TABLE_JOIN_PARTITION_BY; import static org.jooq.Clause.TABLE_JOIN_SEMI_LEFT; +import static org.jooq.Clause.TABLE_JOIN_STRAIGHT; import static org.jooq.Clause.TABLE_JOIN_USING; import static org.jooq.JoinType.CROSS_APPLY; import static org.jooq.JoinType.CROSS_JOIN; @@ -289,6 +290,7 @@ final class JoinTable extends AbstractTable implements TableOptionalOnSt case OUTER_APPLY: return TABLE_JOIN_OUTER_APPLY; case LEFT_SEMI_JOIN: return TABLE_JOIN_SEMI_LEFT; case LEFT_ANTI_JOIN: return TABLE_JOIN_ANTI_LEFT; + case STRAIGHT_JOIN: return TABLE_JOIN_STRAIGHT; default: throw new IllegalArgumentException("Bad join type: " + translatedType); } } diff --git a/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java b/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java index 48051393f3..75e8cd7820 100644 --- a/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java @@ -2069,6 +2069,7 @@ final class SelectQueryImpl extends AbstractResultQuery imp switch (type) { case JOIN: + case STRAIGHT_JOIN: case LEFT_SEMI_JOIN: case LEFT_ANTI_JOIN: case FULL_OUTER_JOIN: { @@ -2099,6 +2100,8 @@ final class SelectQueryImpl extends AbstractResultQuery imp joined = getFrom().get(index).join(table, type); break; + + default: throw new IllegalArgumentException("Bad join type: " + type); } getFrom().set(index, joined);