diff --git a/dbms/src/AggregateFunctions/AggregateFunctionAvg.h b/dbms/src/AggregateFunctions/AggregateFunctionAvg.h index 185dbc38c51..840075511ea 100644 --- a/dbms/src/AggregateFunctions/AggregateFunctionAvg.h +++ b/dbms/src/AggregateFunctions/AggregateFunctionAvg.h @@ -27,12 +27,8 @@ struct AggregateFunctionAvgData template ResultT NO_SANITIZE_UNDEFINED result() const { - if constexpr (std::is_floating_point_v) - if constexpr (std::numeric_limits::is_iec559) - return static_cast(sum) / count; /// allow division by zero - - if (!count) - throw Exception("AggregateFunctionAvg with zero values", ErrorCodes::LOGICAL_ERROR); + if (count == 0) + return 0; return static_cast(sum) / count; } };