oracle trunc函式用法

2021-10-02 07:59:42 字數 2007 閱讀 6010

示例sql:

select to_char(sysdate, 'yyyy-mm-dd hh24:mi:ss'),

to_char(trunc(sysdate), 'yyyy-mm-dd hh24:mi:ss')

from dual t; --sysdate和trunc(sysdate)是不一樣的 sysdate在當天的零時零分零秒等於trunc(sysdate)

select trunc(sysdate, 'dd'), trunc(sysdate) from dual t; --今天 20190703 零時零分零秒

select to_char(trunc(sysdate, 'dd'), 'yyyy/mm/dd hh24:mi:ss'),

to_char(trunc(sysdate), 'yyyy/mm/dd hh24:mi:ss')

from dual;

select trunc(sysdate -

to_date('20190709 23:12:12', 'yyyy/mm/dd hh24:mi:ss'))

from dual t; --兩個日期相差的天數

select trunc(sysdate - 1) from dual t; --昨天

select trunc(sysdate + 1) from dual t; --明天

select trunc(sysdate, 'yy') from dual; --當年第一天

select trunc(sysdate, 'year') from dual; --當年第一天

select trunc(sysdate, 'yyyy') from dual; --當年第一天

select trunc(sysdate, 'q') from dual; --當前時間所在的季度的第一天

select trunc(sysdate, 'mm') from dual; --當月第一天

select trunc(sysdate, 'month') from dual; --當月第一天

select trunc(sysdate, 'd') from dual; --返回本週的第一天(週日為第一天)

select trunc(sysdate, 'day') from dual; --返回本週的第一天(週日為第一天)

select trunc(sysdate, 'iw') from dual; --本週第二天(週日為第一天)

select trunc(sysdate, 'hh') from dual; --當前時間,精確到小時

select trunc(sysdate, 'hh24') from dual; --當前時間。精確到小時

select trunc(sysdate, 'mi') from dual; --當前時間。精確到分鐘 沒有精確到秒的精度

/*trunc(number,num_digits)

number 須要截尾取整的數字。

num_digits 用於指定取整精度的數字。

num_digits 的預設值為 0。

正數向後擷取,負數向前擷取

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

*/select trunc(123.458) from dual; --123

select trunc(123.458, 0) from dual; --123

select trunc(123.458, 1) from dual; --123.4

select trunc(123.458, -1) from dual; --120

select trunc(123.458, -4) from dual; --0

select trunc(123.458, 4) from dual; --123.458

select trunc(123) from dual; --123

select trunc(123, 1) from dual; --123

select trunc(123, -1) from dual; --120

ORACLE TRUNC函式用法

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

Oracle trunc函式用法

日期 1.select trunc sysdate from dual 2013 01 06 今天的日期為2013 01 06 2.select trunc sysdate,mm from dual 2013 01 01 返回當月第一天.3.select trunc sysdate,yy from ...

Oracle trunc 函式用法

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