oracle中的turnc,round,floor,ceil,coalesce函数

这四个函数有点类似java中的函数,首先是
trunc(number,[decimals]) 这个函数类似截取函数
number:表示你要输入的数
decimals(小数): 表示你要截取的位数【正数表示小数点向右保留多少位,负数向左依次置零且小数点右边的截断】
eg:

select trunc(35.34,1) from dual; result: 35.3
select trunc(35.34,3) from dual; result:35.34
select trunc(35.34,-1) from dual; result:30
select trunc(35.34,-2) from dual; result: 0;

trunc(data,[format]) –这个是针对于日期来说的
data: 是一个日期值
format: 这是一个日期格式

1.select trunc(sysdate) from dual –2016-08-06 今天的日期为2016-08-06
2.select trunc(sysdate, ‘mm’) from dual –2016-08-01 返回当月第一天.
3.select trunc(sysdate,’yy’) from dual –2016-08-01 返回当年第一天
4.select trunc(sysdate,’dd’) from dual –2016-08-06 返回当前年月日
5.select trunc(sysdate,’yyyy’) from dual –2016-08-01 返回当年第一天
6.select trunc(sysdate,’d’) from dual –2016-08-06 (星期天)返回当前星期的第一天
7.select trunc(sysdate, ‘hh’) from dual –2016-08-06 17:00:00 当前时间为17:35
8.select trunc(sysdate, ‘mi’) from dual –2016-08-06 17:35:00 TRUNC()函数没有秒的精确

round(number,[decimals]) 这个函数其实就是一个四舍五入函数
number: 要处理的数值
decimals: 四舍五入后,要保留几位

select round(123.346,0) from dual; result: 0
select round(123.346,2) from dual; result: 123.35
select round(-123.346,2) from dual; result: -123.35

ceil和floor函数
ceil(n) 取大于等于n的最小整数
floor(n) 取小于等于n的最大整数
eg:

select ceil(34.3) from dual; result: 35
select floor(34.3) from dual; result: 34
coalesce:

      COALESCE (expression_1, expression_2, ...,expression_n)依次参考各参数表达式,遇到非null值即停止并返回该值。如果所有的表达式都是空值,最终将返回一个空值。

      使用COALESCE在于大部分包含空值的表达式最终将返回空值。

eg:

    SELECT COALESCE(NULL,NULL,3,4,5) FROM dual result: 3

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值