Trunc 函数 (for date)
用法一(for date):
为指定元素而截去的日期值。
语法如下:
TRUNC(date,[fmt])
参数分析:
date
一个日期值。
fmt
日期格式,该日期将由指定的元素格式所截去。忽略它则由最近的日期截。
不多说了,直接看示例吧!看完你就会明白。
示例:
以今天为例,今天是2010年9月10日。(刚刚好今天是教师节,在这里祝老师们节日快乐哦!)
SELECT trunc(sysdate,'mm')FROM dual
返回2010-9-01(也就是说返回当月的第一天) SELECT trunc(sysdate,'yy')FROM dual
返回2010-1-1 当年第一天 SELECT trunc(sysdate,'dd')FROM dual
返回2010-9-10 当天 SELECT trunc(sysdate,'day')FROM dual
返回2010-9-5 当周第一天 SELECT trunc(sysdate)FROM dual
返回2010-9-10 不填fmt参数就默认是当天
PS:
trunc(sysdate)输出的格式为YYYY-MM-DD,但它是把时间四舍五入到了当日的零点, 也就
是:
SELECT to_char(trunc(sysdate),'YYYY-MM-DD HH24:mi:ss') FROM dual 返回2010-09-10 00:00:00
++查看更多oracle转换字符函数 <www.syranmo/2010/09/09/oracle-ecimal-trunc/>
用法二(for number):
TRUNC函数返回处理后的数值,其原理跟ROUND函数很类似,只是该函数不对指定小数前或后的部分做相应舍入选择处理,
而是
全部都截去。
语法如下:
1TRUNC(number,[decimals])
参数分析:
number
准备做截取处理的数值。
decimals
指明需保留小数点后面的位数。(注:可选项,忽略它则截去所有的小数部分)
第二个参数可以为负数,表示为小数点左边指定位数后面的部分截去
示例:
SELECT TRUNC(88.876,2) FROM dual
返回88.87 SELECT TRUNC(88.876) FROM dual
返回88 SELECT TRUNC(88.876,-1) FROM dual
返回80
oracle decimal类型
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论