Oracle中trunc函数、round 函数、ceil函数和floor函数的使用
成都创新互联是工信部颁发资质IDC服务器商,为用户提供优质的光华机房服务器托管服务
1.1trunc函数处理数字
trunc函数返回处理后的数值,其工作机制与ROUND函数极为类似,只是该函数不对指定小数前或后的部分做相应舍入选择处理,而统统截去。
其具体的语法格式如下
TRUNC(number[,decimals])
其中:
number 待做截取处理的数值
decimals 指明需保留小数点后面的位数。可选项,忽略它则截去所有的小数部分。
selecttrunc(123.98)from dual;
selecttrunc(123.123,2)from dual;
selecttrunc(123.123,-1)from dual;
注意:第二个参数可以为负数,表示为小数点左边指定位数后面的部分截去,即均以0记。与取整类似,比如参数为1即取整到十分位,如果是-1,则是取整到十位,以此类推;如果所设置的参数为负数,且负数的位数大于或等于整数的字节数的话,则返回为0。如:TRUNC(89.985,-3)=0。
1.2trunc函数处理日期
trunc函数返回以指定元元素格式截去一部分的日期值。
其具体的语法格式如下:
TRUNC(date,[fmt])
其中:
date为必要参数,是输入的一个日期值
fmt参数可忽略,是日期格式,用以指定的元素格式来截去输入的日期值。忽略它则由最近的日期截去
下面是该函数的使用情况:
trunc(sysdate,'yyyy') --返回当年第一天.
trunc(sysdate,'mm') --返回当月第一天.
trunc(sysdate,'d') --返回当前星期的第一天.
selecttrunc(sysdate,'YYYY')from dual;
selecttrunc(sysdate,'MM')from dual;
selecttrunc(sysdate,'D')from dual;
2.round函数(四舍五入)
描述 : 传回一个数值,该数值是按照指定的小数位元数进行四舍五入运算的结果。
SELECT ROUND( number, [ decimal_places ] ) FROM DUAL
远离零值,向上舍入数字。
语法
ROUNDUP(number,num_digits)
Number 为需要向上舍入的任意实数。
Num_digits 四舍五入后的数字的位数。
说明
函数 ROUNDUP 和函数 ROUND 功能相似,不同之处在于函数 ROUNDUP 总是向上舍入数字。
如果 num_digits 大于 0,则向上舍入到指定的小数位。
如果 num_digits 等于 0,则向上舍入到最接近的整数。
如果 num_digits 小于 0,则在小数点左侧向上进行舍入。
示例
如果您将示例复制到空白工作表中,可能会更易于理解该示例。
操作方法
创建空白工作簿或工作表。
请在“帮助”主题中选取示例。不要选取行或列标题。
从帮助中选取示例。
按 Ctrl+C。
在工作表中,选中单元格 A1,再按 Ctrl+V。
若要在查看结果和查看返回结果的公式之间切换,请按 Ctrl+`(重音符),或在“工具”菜单上,指向“公式审核”,再单击“公式审核模式”。
1
2
3
4
5
6
A B
公式 说明(结果)
=ROUNDUP(3.2,0) 将 3.2 向上舍入,小数位为 0 (4)
=ROUNDUP(76.9,0) 将 76.9 向上舍入,小数位为 0 (77)
=ROUNDUP(3.14159, 3) 将 3.14159 向上舍入,保留三位小数 (3.142)
=ROUNDUP(-3.14159, 1) 将 -3.14159 向上舍入,保留一位小数 (-3.2)
=ROUNDUP(31415.92654, -2) 将 31415.92654 向上舍入到小数点左侧两位 (31500
可以用ceil()或floor()进行取整,ceil()向上取整,floor()向下取整
如:select ceil(215.3),floor(215.3) from dual
结果 216 215
ceil(x) 向上取整
floor(x) 向下取整
round(x,n) 当n=0时就是取整,四舍五入法则
x是你的小数
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款