Oracle 甲骨文四舍五入

Oracle 甲骨文四舍五入,oracle,math,rounding,Oracle,Math,Rounding,这是我的部分陈述。该语句可以工作并接收值4,但我更喜欢3.9。在某些情况下,数字可能不是一个整数,而是.4、.2、.1等。这些数字当前显示为“0”,因为Oracle将四舍五入。如果我删除“轮”,我将收到3.91234585453845474586。有没有办法只显示3.9和0.4、.2等而不显示舍入?我知道这一定是个语法问题。当我删除轮时,我收到一个错误 四舍五入((总数量)*((平均数量/(总和(平均数量))超过(按ID划分))/5),0)平均数量 提前谢谢。像这样试试 SELECT ROUND

这是我的部分陈述。该语句可以工作并接收值4,但我更喜欢3.9。在某些情况下,数字可能不是一个整数,而是.4、.2、.1等。这些数字当前显示为“0”,因为Oracle将四舍五入。如果我删除“轮”,我将收到3.91234585453845474586。有没有办法只显示3.9和0.4、.2等而不显示舍入?我知道这一定是个语法问题。当我删除轮时,我收到一个错误

四舍五入((总数量)*((平均数量/(总和(平均数量))超过(按ID划分))/5),0)平均数量

提前谢谢。

像这样试试

SELECT ROUND(3.9123458543845474586, 1) Round FROM DUAL;

     Round
----------
      3.9
为了更好地理解,请参考此项。

如果您总是想“取整”,则函数为
trunc
。这应该适合您:

select trunc(3.99999, 1) from dual;
结果

3.9

如果您在删除
ROUND
时出错,则表示您没有正确删除它;小心你的括号。伊戈尔的答案将四舍五入到小数点后一位,我想这是你要求的。如果您希望小数点后一位不舍入,请使用
TRUNC(x,1)
TRUNC(4.56,1)
返回
4.5
<代码>四舍五入(4.56,1)返回
4.6
。其中之一就是你的答案。我尝试了上面的方法,但收到了“缺少括号”的错误。谢谢你,这是有效的。当人们说“向上取整”或“向下取整”时,我总是会问,“那么你不想要圆,你想要天花板还是地板?”。他们通常会回答:“不,我想把它四舍五入到最接近的n。把它四舍五入!”