diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/util/Utils.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/util/Utils.java index 456dcafdb2..baf37c1c64 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/util/Utils.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/util/Utils.java @@ -163,8 +163,10 @@ public class Utils { List correlatedSlots) { List slots = new ArrayList<>(); correlatedPredicates.forEach(predicate -> { - if (!(predicate instanceof BinaryExpression) && !(predicate instanceof Not)) { - throw new AnalysisException("UnSupported expr type: " + correlatedPredicates); + if (!(predicate instanceof BinaryExpression) + && (!(predicate instanceof Not) || !(predicate.child(0) instanceof BinaryExpression))) { + throw new AnalysisException("Unsupported correlated subquery with" + + " non-equals correlated predicate " + predicate.toSql()); } BinaryExpression binaryExpression;