加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

oracle的时差

发布时间:2020-12-12 12:51:34 所属栏目:百科 来源:网络整理
导读:嗨我有下表,其中包含开始时间,结束时间,总时间 STARTTIME | ENDTIME | TOTAL TIME TAKEN |02-12-2013 01:24:00 | 02-12-2013 04:17:00 | 02:53:00 | 我需要使用oracle中的更新查询更新上面的TOTAL TIME TAKEN字段 为此,我尝试了以下选择查询 select round((e
嗨我有下表,其中包含开始时间,结束时间,总时间

STARTTIME            | ENDTIME             | TOTAL TIME TAKEN  |
02-12-2013 01:24:00  | 02-12-2013 04:17:00 |  02:53:00         |

我需要使用oracle中的更新查询更新上面的TOTAL TIME TAKEN字段

为此,我尝试了以下选择查询

select  round((endtime-starttime) * 60 * 24,2),endtime,starttime 
  from purge_archive_status_log

但是我得到了02.53,但是我的期望格式是02:53:00请让我知道我该怎么做?

解决方法

根本没有理由在表中包含total_time_taken列,您可以随时计算它的值.但是如果你坚持保留它,那么最好将它重新创建为间隔日到第二种数据类型的列,而不是varchar2(假设它是当前的数据类型).所以这里有两个查询供您选择,一个返回间隔天的值到第二个数据类型,另一个值为varchar2数据类型:

此查询返回两个日期之间的差异,作为间隔天到第二个数据类型的值:

SQL> with t1(starttime,total_time_taken ) as(
  2    select to_date('02-12-2013 01:24:00','dd/mm/yyyy hh24:mi:ss')
  3,to_date('02-12-2013 04:17:00','dd/mm/yyyy hh24:mi:ss')
  4,'02:53:00'
  5     from dual
  6  )
  7  select starttime
  8,endtime
  9,(endtime - starttime) day(0) to second(0) as total_time_taken
 10   from t1
 11  ;

结果:

STARTTIME            ENDTIME               TOTAL_TIME_TAKEN  
-----------          -----------          ---------------- 
02-12-2013 01:24:00  02-12-2013 04:17:00   +0 02:53:00

此查询返回两个日期之间的差异,作为varchar2数据类型的值:

SQL> with t1(starttime,to_char(extract(hour   from res),'fm00')  || ':' ||
 10         to_char(extract(minute from res),'fm00')  || ':' ||
 11         to_char(extract(second from res),'fm00') as total_time_taken
 12    from(select starttime
 13,endtime
 14,total_time_taken
 15,(endtime - starttime) day(0) to second(0) as res
 16          from t1
 17        )
 18  ;

结果:

STARTTIME            ENDTIME              TOTAL_TIME_TAKEN  
-----------          -----------          ---------------- 
02-12-2013 01:24:00  02-12-2013 04:17:00   02:53:00

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读