ITPub博客

首页 > 数据库 > Oracle > oracle中trunc的用法

oracle中trunc的用法

Oracle 作者:w_vi 时间:2012-03-29 11:08:26 0 删除 编辑

1.TRUNC(for dates)

select trunc(sysdate,'day') ss from table

在这里的trunc 是取得本周的第一天

如果仅仅写trunc(sysydate)不使用参数表示截取到日

 

给你举个例子:

 select trunc(sysdate,'DD') AA,trunc(sysdate,'MM') BB,trunc(sysdate,'yyyy') CC,trunc(sysdate,'day')from dual;

得到的结果:

  AA             BB          CC         trunc(sysdate,'day')

2010-8-11    2010-8-1   2010-1-1  2010-8-8

 

AA列得到当天,bb列得到当月第一天,CC列得到当年第一天,trunc(sysdate,'day')列(在查询时没有定义列名)得到本周第一天

 

2.TRUNC(for number)

  TRUNC函数返回处理后的数值,其工作机制与ROUND函数极为类似,只是该函数不对指定小数前或后的部分做相应舍入选择处理,而统统截去。

  其具体的语法格式如下

  TRUNC(number[,decimals])

  其中:

  number 待做截取处理的数值

  decimals 指明需保留小数点后面的位数。可选项,忽略它则截去所有的小数部分

  下面是该函数的使用情况:

  TRUNC(89.985,2)=89.98

  TRUNC(89.985)=89

  TRUNC(89.985,-1)=80

  注意:第二个参数可以为负数,表示为小数点左边指定位数后面的部分截去,即均以0记。与取整类似,比如参数为1即取整到十分位,如果是-1,则是取整到十位,以此类推。

<!-- 正文结束 -->

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/21655783/viewspace-1117590/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2009-05-15