gpt4 book ai didi

sql - Redshift ROUND 函数在某些情况下不舍入?

转载 作者:行者123 更新时间:2023-12-04 13:10:34 25 4
gpt4 key购买 nike

我可以找到一种解决方法,但这真的很烦人,而且我肯定会遗漏一些东西。 Redshift 的 ROUND 函数不会四舍五入到指定的小数位数。
例如,

select round(cast(176 as float)/cast(492 as float),4) as result;
上面的 select 语句将返回 0.35769999999999996。
然而,这个声明:
select round(cast(229 as float)/cast(491 as float),4) as result;
...将返回 0.4664。
为什么?我可以解决这个问题,但似乎它应该可以工作并且只返回四位小数。

最佳答案

如果您的问题都是 9999,那么问题就是浮点表示。转换为小数以获得定点精度:

select round(cast(176 as float)/cast(492 as float), 4)::decimal)10, 4) as result;

关于sql - Redshift ROUND 函数在某些情况下不舍入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65943500/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com