oracle计算时间常用函数

--ddd:一年中的第几天

select to_char(sysdate,'ddd') from dual

--d:一周中的第几天 星期天是第一天 所以要-1
select to_char(sysdate-1,'d') from dual

--dd:一月中的第几天
select to_char(sysdate,'dd') from dual

--day:天的星期名称
select to_char(sysdate,'day') from dual

--iw:年中的第几周
select to_char(sysdate,'iw') from dual

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

--ddd:一年中的第几天
select to_char(sysdate,'ddd') from dual
--d:一周中的第几天 星期天是第一天 所以要-1
select to_char(sysdate-1,'d') from dual
--dd:一月中的第几天
select to_char(sysdate,'dd') from dual
--day:天的星期名称
select to_char(sysdate,'day') from dual
--iw:年中的第几周
select to_char(sysdate,'iw') from dual
--当前时间减去7秒
select sysdate,sysdate-interval'7' second from dual
--当前时间减去7分钟
select sysdate,sysdate-interval'7' minute from dual
--当前时间减去7小时
select sysdate,sysdate-interval '7' hour from dual
--当前时间减去7天
select sysdate,sysdate-interval '7' day from dual
--当前时间减去7月
select sysdate,sysdate-interval '7' month from dual
--当前时间减去7年
select sysdate,sysdate-interval '7' year from dual
--当前时间间隔 8*2小时
select sysdate,sysdate - 8 *  interval '2' hour from dual

select sysdate,to_char(sysdate-1,'yyyy-mm iw-d hh:mi:ss') from dual
--字符串转换为number
select to_number('55') from dual
--只截取年份
select TO_CHAR(trunc(sysdate,'YEAR'),'YYYY') from dual
SELECT TRUNC(SYSDATE) FROM DUAL

select to_char(current_timestamp(5),'DD-MON-YYYY HH24:MI:SS') from dual;
--计算程序运行的时间
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;
 close l_rc;
 end loop;
 dbms_output.put_line ( round( (dbms_utility.get_time-l_start)/100, 2 ) ||' seconds ...' );
end;
原文地址:https://www.cnblogs.com/niwotaxuexiba/p/10164261.html