您好,UncleToo欢迎您!  为了更好的浏览本站,请使用高版本浏览器
RSS  Tag     设为首页 | 加入收藏
 您所在的位置:首页 > 数据库技术 > Oracle

oracle中trunc函数的使用介绍

作者:  来源:互联网  日期:2013-11-21 7:54:04
收藏  评论:( 0 )  阅读:319

oracle中trunc函数的使用介绍

trunc()是Oracle中的内置函数,他主要用在number类型和date类型的数据格式化,下面我们分别看一下trunc()的用法。

一、格式化number类型数据

用于number类型时,trunc()主要是截取小数位数,使用格式为:TRUNC(number[,decimals]),decimals参数,我们可以省略,也可以是任意数字

示例:

1、decimals 省略

select TRUNC(123.456789) from dual;  

输出:123


2、decimals 为正整数

select TRUNC(123.456789,2) from dual;  

输出:123.45

这里我们顺便比较另外一个函数ROUND(),我们用同样的参数输出。

select ROUND(123.456789,2) from dual;

输出:123.46

ROUND()函数的输出结果被四舍五入了,而TRUNC()函数没有。


3、decimals 为负整数

select TRUNC(123.456789,-1) from dual;  

输出:120

当decimals为负数时,表示小数点左边指定位数后面的部分以 0 代替。


4、decimals 为小数

select TRUNC(123.456789,2.8) from dual;  

输出:123.45

这个结果与TRUNC(123.456789,2)输出的结果是一样的,说明Oracle允许我们设置小数,但是在执行时小数部分被省略了。


二、格式化date类型数据

格式化日期类型数据时,TRUNC函数的参数有点变化,使用格式为:TRUNC(date[,fmt]),返回日期date所在期间(参数fmt)的第一天日期,看示例。

1、 取得当前日期

select trunc(sysdate) from dual;  

select trunc(sysdate ,'DD') from dual;

这两种写法输出结果是一样的,都是输出当前日期


2、返回本周星期日的日期

select trunc(sysdate,'d') from dual;

这里得出的日期是西方的标准,如果想输入我们中国的周末标准的话,只要在后面加7就可以了:

select trunc(sysdate,'d')+7 from dual;  

这样得出的日期就是我们中国习惯的日期


3、返回本季度的第一天

select trunc(sysdate,'q') from dual;  


4、返回本月第一天

select trunc(sysdate ,'mm') from dual;


5、返回本年第一天

select trunc(sysdate ,'yyyy') from dual;


6、返回当前小时

select trunc(sysdate ,'HH24') from dual;  


7、返回当前分钟

select trunc(sysdate ,'MI') from dual;




除非特别声明,本站所有PHP教程及其他教程/文章均为原创、翻译或网友投稿,版权均归UncleToo中文网所有, 转载请注明作者及出处。
原文网址:http://www.uncletoo.com/html/oracle/684.html
读完这篇文章后,你是否有所收获? 分享是一种生活的信念!
  • 0
  • 0
我来说两句
更多>>网友评论