04/12/2006, 01:45
|
| | Fecha de Ingreso: noviembre-2006
Mensajes: 5
Antigüedad: 18 años Puntos: 0 | |
Buenas. Oracle no entiende como fecha lo que le estás pasando, sino que entiende como numéricos y que es una división, y después resta:
15/01/2006=0,00747..
14/01/2006=0,00697..
y lo que te devuelve es la resta=0,00049...
Para que oracle entienda que es una fecha, tendrás que poner algo así:
TO_DATE('15/01/2006','DD/MM/YYYY')-TO_DATE('14/01/2006','DD/MM/YYYY')
En este caso, sí que te devuelve un 1.
Para lo de los segundos, como Oracle muestra la diferencia en días, hay que multiplicar por horas del día, minutos y segundos. Quedaría algo así:
(TO_DATE('15/01/2006 23:50:50','DD/MM/YYYY HH24:MI:SS')-TO_DATE('15/01/2006 23:50:42','DD/MM/YYYY HH24:MI:SS'))*60*60*24
Un saludo. |