1

我有一个这样的手动查询:

 SELECT 
    to_char( to_date('29-Jul-12 22:25:11','DD-MON-YY HH24:MI:SS')- SYSDATE ) 
 FROM DUAL

我只需要显示输出,例如HH24:MM:SS.

4

2 回答 2

0
SELECT trunc(MOD((SYSDATE - to_date('29-Jul-12 22:25:11', 'DD-MON-YY HH24:MI:SS')) * 24, 24)) || ':' ||
       trunc(MOD((SYSDATE - to_date('29-Jul-12 22:25:11', 'DD-MON-YY HH24:MI:SS')) * 24 * 60, 60)) || ':' ||
       trunc(MOD((SYSDATE - to_date('29-Jul-12 22:25:11', 'DD-MON-YY HH24:MI:SS')) * 24 * 60 * 60, 60)) Time
FROM   dual
于 2012-10-18T10:24:41.240 回答
0

编写获取您的印章日期并返回 varchar2 的函数(类似于“HH24:MI:SS”的值)

    create or replace Function Get_Difference(i_Stamp_Date date) return varchar2 is
  v_Result varchar2(8);
begin    
  v_Result := Round(mod((sysdate - i_Stamp_Date) * 24, 24)) || ':' ||
              Round(mod((sysdate - i_Stamp_Date) * 1440, 60)) || ':' ||
              Round(mod((sysdate - i_Stamp_Date) * 86400, 60));

  return v_Result;
end;

然后你可以这样称呼它:

SELECT Get_Difference(to_date('29-Jul-12 22:25:11','DD-MON-YY HH24:MI:SS'))  FROM DUAL

并享受它!

于 2012-10-30T10:05:29.637 回答