[英]trunc and round function in sql
trunc和round具有否定参数是否相同?
SQL> select round(123456.76,-4) from dual;
ROUND(123456.76,-4)
-------------------
120000
SQL> select trunc(123456.76,-4) from dual;
TRUNC(123456.76,-4)
-------------------
120000
不,行为取决于有效数字的值(在您的情况下,第3个数字(3)是有效数字,因为它在5 round
以下并且trunc
相同)
尝试select trunc(125456.76,-4) from dual
(结果为120000)中select trunc(125456.76,-4) from dual
vs select round(125456.76,-4) from dual
(结果为130000)中select round(125456.76,-4) from dual
)。 现在,当有效数字为5(或更高)时, trunc
和round
入的结果将不同。
ROUND
与给定值的整数相关。
TRUNC
与给定值的截断有关。
在给定示例的round
情况下,在小数点之前的4位到第4位填充0。
但是在trunc
情况下,小数点前的第4位到第4位替换为0。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.