轻松学会在Oracle中实现时间相加处理

文章作者 100test 发表时间 2007:11:28 13:52:37
来源 100Test.Com百考试题网


如何在Oracle中实现时间相加处理?
  今天由于项目的需要,我负责编写Oracle中的存储过程。以前从来没有接触过,这次是个很好的学习机会,好好把握!
  但是,在使用过程中,遇到一个问题,不知道该如何实现时间相加功能,因为系统中需要用来时间相加功能。通过网络找资料,但是最终一无所获。于是,决定自己写一个!希望可以给朋友有所帮助!

  create or replace function Add_Times
  (d1 in date,NewTime in date) return date
  is
  hh number.
  mm number.
  ss number.
  hours number.
  dResult date.
  begin

  -- 下面依次取出时、分、秒
 
  0select to_number(to_char(NewTime,?HH24?)) into hh from dual.
  0select to_number(to_char(NewTime,?MI?)) into mm from dual.
  0select to_number(to_char(NewTime,?SS?)) into ss from dual.

  -- 换算出NewTime中小时总和

  hours := (hh (mm / 60) (ss / 3600))/ 24.

  -- 得出时间相加后的结果

  0select d1 hours into dResult from dual. return(dResult). end Add_Times.

  -- 测试用例

  -- 0select Add_Times(sysdate,to_date
  (?2004-12-06 03:23:00?,?YYYY-MM-DD HH24:MI:SS?))
  from dual

相关文章


酷!Vista下文件夹也可虚拟磁盘分区
WindowsVista里面延迟删除技术的变更
别让Vista把咱当傻子装驱动不用它提示
专家讲堂:如何创建WindowsV 服务器
轻松学会在Oracle中实现时间相加处理
深入探讨:宿主操作系统的层次安全技术
实例解析:怎样在Oracle9i中计算时间差
2008年考研农学考试-大纲整体分析及新增考点
2008年考研历史学大纲详解之中国古代史
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛