Calculer le temps entre 2 dates [ORACLE 7] - SQL/NoSQL - Programmation
Marsh Posté le 06-09-2007 à 12:36:33
tu dois voir du coté des type interval (aucune idée si en 7 ca existait) ou alors formater ton nombre en sortie a coup de modulo.
mais de toute facon les fonction arithmétiques sur des dates ca marche pas génial génial en oracle ou alors il faut dévelloper ses propres fonctions.
pour info si tu ne 'lavais pas remarqué ce qu'il te sort la c'est ta fraction de jour.
Marsh Posté le 06-09-2007 à 13:44:55
le type "datetime", en général, sur la plupart des SGBD, c'est un float.
la partie entière, c'est le nombre de jours depuis une date donnée, tandis que la partie décimale, c'est la fraction de jour correspondant à l'heure.
0,017 ça correspond dont à 1,7% d'une journée, c'est à dire 24 * 60 * 17 / 1000 = 25 minutes environ.
8:35:10 - 8:10:00 ~ 25 minutes effectivement.
logiquement :
Code :
|
te donnera exactement ton heure.
il n'y a pas d'erreur de la part d'Oracle.
Marsh Posté le 06-09-2007 à 15:12:56
merci d'avoir pris du temps pour me répondre
magicbuzz, j'avais essayé ta requete, réponse d'oracle :
ORA-01481: invalid number format model
sinon, je me suis débrouillé en bidouillant, mais je fais plusieurs select.
C'est pas propre, mais le temps d'execution n'est pas important.
Marsh Posté le 06-09-2007 à 11:39:19
Bonjour,
J'ai 2 dates, par exemple:
06/09/2007 08:10:00
06/09/2007 08:35:10
et je n'arrive pas à récupérer la différence entre ces 2 dates... genre 00:25:10
SQL> select to_date('06/09/2007 08:35:10', 'DD/MM/YYYY HH:MI:SS') - to_date('06/09/2007 08:10:00', 'DD/MM/YYYY HH:MI:SS') from dual;
TO_DATE('06/09/200708:35:10','DD/MM/YYYYHH:MI:SS')-TO_DATE('06/09/200708:10:00',
--------------------------------------------------------------------------------
.017476852
Une idée ? J'aimerais ne pas passez par du PL/SQL si possible..