Oracle的日期函式的使用整理

2021-07-16 16:24:10 字數 2798 閱讀 4755

加法

select sysdate,add_months(sysdate,12) from dual; –加1年

select sysdate,add_months(sysdate,1) from dual; –加1月

select sysdate,to_char(sysdate+7,』yyyy-mm-dd hh24:mi:ss』) from dual; –加1星期

select sysdate,to_char(sysdate+1,』yyyy-mm-dd hh24:mi:ss』) from dual; –加1天

select sysdate,to_char(sysdate+1/24,』yyyy-mm-dd hh24:mi:ss』) from dual; –加1小時

select sysdate,to_char(sysdate+1/24/60,』yyyy-mm-dd hh24:mi:ss』) from dual; –加1分鐘

select sysdate,to_char(sysdate+1/24/60/60,』yyyy-mm-dd hh24:mi:ss』) from dual; –加1秒

減法select sysdate,add_months(sysdate,-12) from dual; –減1年

select sysdate,add_months(sysdate,-1) from dual; –減1月

select sysdate,to_char(sysdate-7,』yyyy-mm-dd hh24:mi:ss』) from dual; –減1星期

select sysdate,to_char(sysdate-1,』yyyy-mm-dd hh24:mi:ss』) from dual; –減1天

select sysdate,to_char(sysdate-1/24,』yyyy-mm-dd hh24:mi:ss』) from dual; –減1小時

select sysdate,to_char(sysdate-1/24/60,』yyyy-mm-dd hh24:mi:ss』) from dual; –減1分鐘

select sysdate,to_char(sysdate-1/24/60/60,』yyyy-mm-dd hh24:mi:ss』) from dual; –減1秒

1.日期時間間隔操作

當前時間減去7分鐘的時間

select sysdate,sysdate - interval 『7』 minute from dual

當前時間減去7小時的時間

select sysdate - interval 『7』 hour from dual

當前時間減去7天的時間

select sysdate - interval 『7』 day from dual

當前時間減去7月的時間

select sysdate,sysdate - interval 『7』 month from dual

當前時間減去7年的時間

select sysdate,sysdate - interval 『7』 year from dual

時間間隔乘以乙個數字

select sysdate,sysdate - 8 *interval 『2』 hour from dual

2.日期到字元操作

select sysdate,to_char(sysdate,』yyyy-mm-dd hh24:mi:ss』) from dual

select sysdate,to_char(sysdate,』yyyy-mm-dd hh:mi:ss』) from dual

select sysdate,to_char(sysdate,』yyyy-ddd hh:mi:ss』) from dual

select sysdate,to_char(sysdate,』yyyy-mm iw-d hh:mi:ss』) from dual

3. 字元到日期操作

select to_date(『2003-10-17 21:15:37』,』yyyy-mm-dd hh24:mi:ss』) from dual

具體用法和上面的to_char差不多。

4. trunk/ round函式的使用

select trunc(sysdate ,』year』) from dual

select trunc(sysdate ) from dual

select to_char(trunc(sysdate ,』yyyy』),』yyyy』) from dual

5.oracle有毫秒級的資料型別

–返回當前時間 年月日小時分秒毫秒

select to_char(current_timestamp(5),』dd-mon-yyyy hh24:mi:ssxff』) from dual;

–返回當前 時間的秒毫秒,可以指定秒後面的精度(最大=9)

select to_char(current_timestamp(9),』mi:ssxff』) from dual;

6.計算程式執行的時間(ms)

declare

type rc is ref cursor;

l_rc rc;

l_dummy all_objects.object_name%type;

l_start number default dbms_utility.get_time;

begin

for i in 1 .. 1000

loop

open l_rc for

『select object_name from all_objects 『||

『where object_id = 』 || i;

fetch l_rc into l_dummy;

oracle中日期的函式的使用

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

關於Oracle取整的函式

關於oracle取整的函式分別有以下幾種 1.取整 大 select ceil 1.001 value from dual 向大的進製 ceil 0.12 02.取整 小 select floor 1.001 value from dual 向小的進製 floor 0.12 13.取整 擷取 sel...

oracle的日期函式

日期函式 日期用date表示 我的系統時間08 11月 17 century 世紀資訊 year 年份資訊 month 月份天數 day 天數資訊 hour 小時資訊 minute 分秒資訊 second 秒數資訊 獲取系統日期函式 sysdate 返回當前系統日期 select sysdate f...