Comment puis-je obtenir la différence d'heures entre les deux dates?
Je dois faire un "select" qui renvoie la différence entre un champ de type date à partir de la base de données et la date du jour en heures. Comment puis-je faire dans oracle?
J'ai essayer ceci:
select 24 * (to_date(sysdate, 'YYYY-MM-DD hh24:mi')
- to_date('2012-02-28 15:20', 'YYYY-MM-DD hh24:mi')) diff_hours
from dual;
Mais cela ne fonctionne pas.
OriginalL'auteur Guilherme Costa | 2012-02-28
Vous devez vous connecter pour publier un commentaire.
L'erreur est parce que SYSDATE est déjà une date, il n'y a pas besoin d'utiliser
TO_DATE()
pour le convertir en un jour.Si vous n'avez pas le convertir en date:
Et si la mise en forme des dates sont erronées, vous pouvez possible d'utiliser deux étapes comme:
OriginalL'auteur aweis
J'ai fait de cette façon:
select to_number(to_char(sysdate,'HH24')) - to_number(to_char(*YOUR_DATA_VALUE*,'HH24')),max(exp_time) from ...
Aussi, vous pouvez consulter ce pour minutes : entrez description du lien ici
OriginalL'auteur ibrahim
Vous devriez avoir multiplié par 24 pour obtenir des heures à partir d'une date de différence.
OriginalL'auteur Amir Pashazadeh