diff --git a/src/sql/optimizer/ob_join_order.cpp b/src/sql/optimizer/ob_join_order.cpp index 92b07a76d..918ea8144 100644 --- a/src/sql/optimizer/ob_join_order.cpp +++ b/src/sql/optimizer/ob_join_order.cpp @@ -4029,7 +4029,7 @@ int ObJoinOrder::get_candi_range_expr(const ObIArray &range_columns, min_cost_range_count, cost))) { LOG_WARN("failed to calculate range expr cost", K(ret)); - } else if (cost >= min_cost) { + } else if (cost >= min_cost && min_cost_range_count > 500) { //increase cost, ignore in expr range_exprs.pop_back(); if (OB_FAIL(ignore_predicates.push_back(min_cost_in_expr))) {