我有一个数字(可能是12345或123.45)。
我需要将Hive中的小数点位置向左或向右移动而不进行舍入。
问题1
select 1001.123*POW(10,-2);
10.011230000000001
select 1001.123/100;
10.011230000000001
但是我希望这是10.01123。问题2
但是如果是下面这样的情况
select 1000*POW(10,-2);
10.00
请建议我一些功能或过程。
最佳答案
您可以尝试以下一种。
SELECT CASE WHEN @value <> CEILING(@value) THEN Str(@value, 12, 4) ELSE Str(@value, 12, 2) END
关于sql - 我需要在Hive中将小数点位置向左或向右移动而不四舍五入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52970709/