Puede restar dos fechas en Oracle. El resultado es un FLOAT que representa el número de días entre las dos fechas. Puedes hacer aritmética simple en la parte fraccionaria para calcular las horas, los minutos y los segundos.
He aquí un ejemplo:
SELECT TO_DATE('2000/01/02:12:00:00PM', 'yyyy/mm/dd:hh:mi:ssam')-TO_DATE('2000/01/01:12:00:00AM', 'yyyy/mm/dd:hh:mi:ssam') DAYS FROM DUAL
Resultados en:1,5