科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道在Oracle中实现时间相加处理

在Oracle中实现时间相加处理

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

  -- 名称:Add_Times   -- 功能:返回d1与NewTime相加以后的结果。

作者:中国IT实验室 来源:中国IT实验室 2007年10月1日

关键字: SQL 数据库 ORACLE

  • 评论
  • 分享微博
  • 分享邮件

  -- 名称:Add_Times
  -- 功能:返回d1与NewTime相加以后的结果,实现时间的相加
  -- 说明:对于NewTime中的日期不予考虑
  -- 日期:2004-12-07
  -- 版本:1.0
  -- 作者:Kevin
  
  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
  -- 下面依次取出时、分、秒
  select to_number(to_char(NewTime,'HH24')) into hh from dual;
  select to_number(to_char(NewTime,'MI')) into mm from dual;
  select to_number(to_char(NewTime,'SS')) into ss from dual;
  -- 换算出NewTime中小时总和,在一天的百分几
  hours := (hh + (mm / 60) + (ss / 3600))/ 24;
  -- 得出时间相加后的结果
  select d1 + hours into dResult from dual;
  return(dResult);
  end Add_Times;
  
  -- 测试用例
  -- select Add_Times(sysdate,to_date('2004-12-06 03:23:00','YYYY-MM-DD HH24:MI:SS')) from dual

查看本文来源

    • 评论
    • 分享微博
    • 分享邮件