diff --git a/src/sql/engine/expr/ob_expr_collation.cpp b/src/sql/engine/expr/ob_expr_collation.cpp index 0f4f62baa..ab7e0a500 100644 --- a/src/sql/engine/expr/ob_expr_collation.cpp +++ b/src/sql/engine/expr/ob_expr_collation.cpp @@ -286,6 +286,9 @@ int ObExprSetCollation::calc_result_type2(ObExprResType &type, } if (OB_SUCC(ret)) { type1.set_calc_type(ObVarcharType); + if (!type1.is_string_type()) { + type1.set_calc_collation_type(type2.get_collation_type()); + } type2.set_calc_type(ObIntType); } return ret;