Fix greatest precision calc for integer type
This commit is contained in:
@ -5339,6 +5339,7 @@ int ObMinMaxExprOperator::calc_result_meta_for_comparison(
|
|||||||
for (i = 0; i < param_num; ++i) {
|
for (i = 0; i < param_num; ++i) {
|
||||||
if (types_stack[i].is_integer_type()) { // integer scale is zero
|
if (types_stack[i].is_integer_type()) { // integer scale is zero
|
||||||
max_scale = MAX(max_scale, 0);
|
max_scale = MAX(max_scale, 0);
|
||||||
|
max_precision = MAX(max_precision, types_stack[i].get_precision());
|
||||||
} else if (!types_stack[i].is_null()) {
|
} else if (!types_stack[i].is_null()) {
|
||||||
max_scale = MAX(max_scale, types_stack[i].get_mysql_compatible_scale());
|
max_scale = MAX(max_scale, types_stack[i].get_mysql_compatible_scale());
|
||||||
max_precision = MAX(max_precision, types_stack[i].get_precision());
|
max_precision = MAX(max_precision, types_stack[i].get_precision());
|
||||||
|
|||||||
Reference in New Issue
Block a user