diff --git a/src/sql/code_generator/ob_expr_generator_impl.cpp b/src/sql/code_generator/ob_expr_generator_impl.cpp index 88285eb58184c998c21493b43eee586863369435..7c001f67781a21fb56bf6e1828ea2b81e1e2cef1 100644 --- a/src/sql/code_generator/ob_expr_generator_impl.cpp +++ b/src/sql/code_generator/ob_expr_generator_impl.cpp @@ -1436,13 +1436,8 @@ int ObExprGeneratorImpl::visit(ObAggFunRawExpr& expr) } else if (OB_FAIL(sql_expr_->add_expr_item(item, &expr))) { LOG_WARN("failed to add expr item", K(ret)); } else { - if (T_FUN_JSON_OBJECTAGG == expr.get_expr_type()) { - aggr_expr->set_real_param_col_count(expr.get_real_param_count()); - aggr_expr->set_all_param_col_count(expr.get_param_count()); - } else { - aggr_expr->set_real_param_col_count(1); - aggr_expr->set_all_param_col_count(1); - } + aggr_expr->set_real_param_col_count(expr.get_real_param_count()); + aggr_expr->set_all_param_col_count(expr.get_param_count()); if (OB_SUCCESS == ret && (T_FUN_GROUP_CONCAT == expr.get_expr_type() || T_FUN_GROUP_RANK == expr.get_expr_type() || T_FUN_GROUP_DENSE_RANK == expr.get_expr_type() || T_FUN_GROUP_PERCENT_RANK == expr.get_expr_type() || diff --git a/src/sql/rewrite/ob_transform_pre_process.h b/src/sql/rewrite/ob_transform_pre_process.h index 8efd7b515592c5b8b46249a3377f037d6f8b00f3..081d22f61a78030bf0942a17f0b820defcaea032 100644 --- a/src/sql/rewrite/ob_transform_pre_process.h +++ b/src/sql/rewrite/ob_transform_pre_process.h @@ -60,7 +60,7 @@ private: DistinctObjMeta(ObObjType obj_type, ObCollationType coll_type, ObCollationLevel coll_level) : obj_type_(obj_type), coll_type_(coll_type), coll_level_(coll_level) { - if (!ObDatumFuncs::is_string_type(obj_type_) || !ObDatumFuncs::is_json(obj_type_)) { + if (!ObDatumFuncs::is_string_type(obj_type_) && !ObDatumFuncs::is_json(obj_type_)) { coll_type_ = CS_TYPE_MAX; coll_level_ = CS_LEVEL_INVALID; }