Trunc 函数 for date
  用法一(for date):
  为指定元素而截去的日期值。
  语法如下:
  TRUNCdate,[fmt]
  参数分析:
  date
  一个日期值。
  fmt
  日期格式,该日期将由指定的元素格式所截去。忽略它则由最近的日期截。
  不多说了,直接看示例吧!看完你就会明白。
  示例:
  以今天为例,今天是2010910日。(刚刚好今天是教师节,在这里祝老师们节日快乐哦!)
  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函数很类似,只是该函数不对指定小数前或后的部分做相应舍入选择处理,
  而是
  全部都截去。
  语法如下:
  1TRUNCnumber,[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小时内删除。