字段A:20121031063702
年:4位
月:2位
日:2位
小时:2位
分钟: 2位
秒:2位字段B:
20121031120031
格式与A一样,求A-B的时间差,单位:小时。急!!!

解决方案 »

  1.   


    WITH t AS
    (
         SELECT '20121031063702,' AS a, '20121031120031' AS b FROM dual
    )
    SELECT SUBSTR(B,9,2) - SUBSTR(A,9,2) AS SC FROM T
      

  2.   


    select 
           
           (to_date('20121031120031', 'yyyy-MM-dd hh:mi:ss') -
           to_date('20121031063702', 'yyyy-MM-dd hh:mi:ss'))*24
      from dual
      

  3.   

    select 
          
           round(abs(to_date('20121031063702', 'yyyy-MM-dd hh:mi:ss') -
           to_date('20121031120031', 'yyyy-MM-dd hh:mi:ss'))*24,2)
      from dual
      

  4.   

    都转换成时间格式  相减就是天数差  然后*24就是小时差  保留2位小数: 四舍五入:round(**,2)  不入:trunc(**,2)