select floor(3671/3600)||'小时'||floor(mod(3671,3600)/60)||'分'||mod(3671,60)||'秒' from dual

解决方案 »

  1.   

    不知道这样能不能满足你的要求,我想稍做处理下应该就可以了SQL> select to_char(numtodsinterval(3830,'second')) from dual;TO_CHAR(NUMTODSINTERVAL(3830,'
    ------------------------------
    +000000000 01:03:50.000000000 //3830秒相当1小时3分50秒SQL> select to_char(numtodsinterval(3830245,'second')) from dual;TO_CHAR(NUMTODSINTERVAL(383024
    ------------------------------
    +000000044 07:57:25.000000000 //3830245秒相当于44天7小时57分25秒
      

  2.   

    如果不超过一天
    select to_char(trunc(sysdate)+1234/(60*60*24),'hh24:mi:ss') from dual;
      

  3.   

    sint(3671/3600)||'小时'||int(mod(3671,3600)/60)||'分'||mod(3671,60)||'秒'
      

  4.   

    同意bzszp(SongZip)如果不超过一天
    select to_char(trunc(sysdate)+1234/(60*60*24),'hh24:mi:ss') from dual;
      

  5.   

    SQL> select floor(5000/60/60) "小时",floor(5000/60-floor(5000/60/60)*60) "分",5000-floor(5000/60)*60 "秒" from dual;      小时         分         秒
    ---------- ---------- ----------
             1         23         20Executed in 0.015 secondsSQL>SQL> select to_char(floor(5000/60/60)) || '小时' || to_char(floor(5000/60-floor(5000/60/60)*60)) || '分' || to_char(5000-floor(5000/60)*60) || '秒' s from dual;S
    -------------
    1小时23分20秒Executed in 0.015 secondsSQL> SQL> select to_char(floor(500000/60/60)) || '小时' || to_char(floor(50000/60-floor(500000/60/60)*60)) || '分' || to_char(500000-floor(500000/60)*60) || '秒' s from dual;S
    ------------------
    138小时-7447分20秒Executed in 0.015 secondsSQL> 
      

  6.   

    不好意思,少写了个0
    SQL> select to_char(floor(500000/60/60)) || '小时' || to_char(floor(500000/60-floor(500000/60/60)*60)) || '分' || to_char(500000-floor(500000/60)*60) || '秒' s from dual;S
    ---------------
    138小时53分20秒Executed in 0 secondsSQL>