将两个时间相减,再乘以24*60SQL> select (sysdate - to_date('2003-03-10','yyyy-mm-dd'))*24*60 from dual
  2  ;(SYSDATE-TO_DATE('2003-03-10',
------------------------------
                    34171.1667

解决方案 »

  1.   

    select round(1440 * (dt1 - dt2)) from dual
    例如:
    SQL> select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;TO_CHAR(SYSDATE,'YY
    -------------------
    2003-04-02 10:44:56SQL> select round(1440 * (sysdate - to_date('2003-04-02 10:30:20','yyyy-mm-dd hh24:mi:ss'))) from dual;(1440*(SYSDATE-TO_DATE('2003-04-0210:30:20','YYYY-MM-DDHH24:MI:SS')))
    ---------------------------------------------------------------------
                                                                       15
      

  2.   

    select (sysdate - to_date('2003-03-10','yyyy-mm-dd'))*24*60 from dual注意:减数一定要比被减数要小,否则会报错
      

  3.   

    supkim(按地方划时代风格) :为什么减数一定要比被减数要小?
    我试了一下,没有错误。只不过出现负值而已。
      

  4.   

    select abs(sysdate - to_date('2003-03-10','yyyy-mm-dd'))*24*60 from dual