```
SET compile_expressions = 1
SELECT GREATEST(2,0)
```

{
        if constexpr (is_plus_minus_compare)
        {
            if (scale_a != 1)
                return applyScaled<true>(a, b, scale_a);
            else if (scale_b != 1)
                return applyScaled<false>(a, b, scale_b);
        }
        else if constexpr (is_division && IsDecimalNumber<B>)
            return applyScaledDiv(a, b, scale_a);
        return apply(a, b);
    }
private:
    template <typename T, typename U>
    static NativeResultType apply(const T & a, const U & b)