Users want to get rounding mode in `quantileExact` equivalent to "median_low" from Python:
https://docs.python.org/3/library/statistics.html#statistics.median_low
while current implementation works equivalent to "median_high" (?)
AggregateFunctionQuantile<Value, Data, Name, has_second_arg, FloatReturnType, returns_many>>
{
private:
    using ColVecType = std::conditional_t<IsDecimalNumber<Value>, ColumnDecimal<Value>, ColumnVector<Value>>;
    static constexpr bool returns_float = !(std::is_same_v<FloatReturnType, void>);
    static_assert(!IsDecimalNumber<Value> || !returns_float);
    QuantileLevels<Float64> levels;
    
    Float64 level = 0.5;
    DataTypePtr & argument_type;
public:
    AggregateFunctionQuantile(const DataTypes & argument_types_, const Array & params)
        : IAggregateFunctionDataHelper<Data, AggregateFunctionQuantile<Value, Data, Name, has_second_arg, FloatReturnType, returns_many>>(argument_types_, params)
        , levels(params, returns_many), level(levels.levels[0]), argument_type(this->argument_types[0])
    {
        if (!returns_many && levels.size() > 1)
            throw Exception("Aggregate function " + getName() + " require one parameter or less", ErrorCodes::NUMBER_OF_ARGUMENTS_DOESNT_MATCH);
    }
    String getName() const override { return Name::name; }