SELECT EXTRACT (DAY    FROM (END_DATE-BEG_DATE))*24*60+
       EXTRACT (HOUR   FROM (END_DATE-BEG_DATE))*60+
       EXTRACT (MINUTE FROM (END_DATE-BEG_DATE))
  from foo

解决方案 »

  1.   

    两个timestamp相减,得到的结果不是一个整数,而是一个在Oracle被称作"时间间隔"类型的一个结果,为此Oracle特地提供了 EXTRACT函数用于从该种类型中获取相应值.两个DATE类型直接相减,是可以得到日期差的.只是缺少了一定的精度.
      

  2.   

    学习了还真没用过EXTRACT函数,也很少遇到timestamp类型。引发一个联想什么情况下使用timestamp类型呢?
      

  3.   


    The TIMESTAMP data type is an extension of the DATE data type. It stores fractional seconds in addition to the information stored in the DATE data type. The TIMESTAMP data type is useful for storing precise time values, such as in applications that must track event order.~ timestamp 数据类型是DATE类型的一种扩展,它更加精确~  依赖于平台,能够提供 毫秒或者微秒级的精度.