diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractField.java b/jOOQ/src/main/java/org/jooq/impl/AbstractField.java index 37109d2839..9110110aaa 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractField.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractField.java @@ -1422,9 +1422,17 @@ abstract class AbstractField extends AbstractTypedNamed implements Field field) { switch (comparator) { case IN: - return in(field); + if (field instanceof ScalarSubquery) + return new CompareCondition(this, field, comparator); + else + return in(field); + case NOT_IN: - return notIn(field); + if (field instanceof ScalarSubquery) + return new CompareCondition(this, field, comparator); + else + return notIn(field); + case IS_DISTINCT_FROM: return new IsDistinctFrom<>(this, nullSafe(field, getDataType())); case IS_NOT_DISTINCT_FROM: