当前位置: 代码迷 >> Oracle面试 >> 求问。时间戳,该如何处理
  详细解决方案

求问。时间戳,该如何处理

热度:7493   发布时间:2013-02-26 00:00:00.0
求问。。时间戳
我想求两个时间的差,比如:sysdate-(sysdate-1)  返回应该单位应该是天,所以我又sysdate-(sysdate-1)*24*3600返回的是s  可以我是求select 的查询时间,很短,要精确到跑秒。不知如何写?谢谢。。。
------解决方案--------------------------------------------------------
有两个日期数据START_DATE,END_DATE,欲得到这两个日期的时间差(以天,小时,分钟,秒,毫秒):
天:
ROUND(TO_NUMBER(END_DATE - START_DATE))
小时:
ROUND(TO_NUMBER(END_DATE - START_DATE) * 24)
分钟:
ROUND(TO_NUMBER(END_DATE - START_DATE) * 24 * 60)
秒:
ROUND(TO_NUMBER(END_DATE - START_DATE) * 24 * 60 * 60)
毫秒:
ROUND(TO_NUMBER(END_DATE - START_DATE) * 24 * 60 * 60 * 60)

------解决方案--------------------------------------------------------
declare
  vTime number;
  vTime2 number;
begin  
  vTime := dbms_utility.get_time;
  for i in 1..1000000 loop
    null;
  end loop;
  vTime2 := dbms_utility.get_time;
  dbms_output.put_line(to_char((vTime2-vTime)/100) 
------解决方案--------------------------------------------------------
 '秒');
end;
  相关解决方案