直接用两个日期相减,获得的值是天数,可以包含小数;小数表示相应的时分秒;如果需要获得小时数,分钟数,分别乘以24,或者乘以24*60比如:select sysdate - to_date('2017-10-31 16:00:00','yyyy-mm-dd') from dual; -- 天数select (sysdate - to_date('2017-10-31 16:00:00','yyyy-mm-dd'))*24 from dual; -- 小时数