oracle trunc 函式的使用方法

2021-07-12 06:09:07 字數 2403 閱讀 2049

dual : oracle提供的最小的工作表,只有一行一列,具有某些特殊功用。

oracle trunc()函式是最常用的函式之一,下面就為您介紹oracle trunc()函式的用法,供您參考,希望可以讓您對oracle trunc()函式有更深的認識。

1.trunc(for dates)

trunc函式為指定元素而截去的日期值。

其具體的語法格式如下:

trunc(date[,fmt])

其中:date乙個日期值

fmt        日期格式,該日期將由指定的元素格式所截去。忽略它則由最近的日期截去

下面是該函式的使用情況:

trunc(to_date('24-nov-1999 08:00 pm','dd-mon-yyyy hh:mi am'))

='24-nov-1999 12:00:00 am'

trunc(to_date('24-nov-1999 08:37 pm','dd-mon-yyyy hh:mi am','hh'))='24-nov-1999 08:00:00 am'

round     (date,'format')未指定format時,如果日期中的時間在中午之前,則將日期中的時間截斷為12     a.m.(午夜,一天的開始),否則進到第二天。 

trunc(date,'format')未指定format時,將日期截為12     a.m.,不考慮是否在中午之前的條件。

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記。

以上oracle trunc()函式的用法介紹。

oracle trunc()函式的例項:

--oracle trunc()函式的用法

/**************日期********************/

1.select trunc(sysdate) from dual --2016/5/31

2.select trunc(sysdate, 'mm')  from  dual --2016/5/1 返回當月第一天.

3.select trunc(sysdate,'yy') from dual --2016/1/1    返回當年第一天

4.select trunc(sysdate,'dd') from dual --2016/5/31  返回當前年月日

5.select trunc(sysdate,'yyyy') from dual --2016/1/1  返回當年第一天

6.select trunc(sysdate,'d') from dual --2016/5/29 (星期天)返回當前星期的第一天

7.select trunc(sysdate, 'hh') from dual  --2016/5/31 21:00:00  當前時間為21:56

8.select trunc(sysdate, 'mi') from dual --2016/5/31 21:56:00 trunc()函式沒有秒的精確

/***************數字********************/

/*trunc(number,num_digits) 

number 需要截尾取整的數字。 

num_digits 用於指定取整精度的數字。num_digits 的預設值為 0。

trunc()函式擷取時不進行四捨五入

*/9.select trunc(123.458) from dual --123

10.select trunc(123.458,0) from dual --123

11.select trunc(123.458,1) from dual --123.4

12.select trunc(123.458,-1) from dual --120

13.select trunc(123.458,-4) from dual --0

14.select trunc(123.458,4) from dual --123.458

15.select trunc(123) from dual --123

16.select trunc(123,1) from dual --123

17.select trunc(123,-1) from dual --120

oracle trunc 函式的用法

trunc 函式分兩種 1.trunc for dates trunc函式為指定元素而截去的日期值。其具體的語法格式如下 trunc date fmt 其中 date 乙個日期值 fmt 日期格式,該日期將由指定的元素格式所截去。忽略它則由最近的日期截去 下面是該函式的使用情況 select tru...

oracle trunc 函式的用法

關於trunc函式的format,自己現在有點體會,format為day時,只精確到天,而不管幾年幾月只要是符合的day就可以了,要想確定一年中的某月的某一天就要用trunc date,dd 通俗的說吧,format為年時,精確到 年 為月時,精確到 年,月 不管哪年,只要是相同的月和哪天 為日時,...

Oracle trunc 函式的用法

oracle trunc 函式的用法 日期 1.select trunc sysdate from dual 2011 3 18 今天的日期為2011 3 18 2.select trunc sysdate,mm from dual 2011 3 1 返回當月第一天.3.select trunc s...