Équivalent de la fonction DATEDIFF du serveur SQL sous Oracle.

DATEDIFF est une fonction courante dans SQL Server pour rechercher le nombre de jours entre deux dates. De même, son homologue, l’un des systèmes de gestion de base de données relationnelle les plus robustes, Oracle propose sa propre solution, bien qu’Oracle ne dispose pas de la fonction DATEDIFF. La fonction trunc () peut être utilisée pour calculer le nombre de jours. Sinon, il peut être multiplié par 24, 1440 ou 86400 pour calculer le nombre de jours en heures, minutes et secondes respectivement. De même, round () peut être utilisé pour obtenir le jour le plus proche.

Problème

Quelle est la fonction dans Oracle qui serait l'équivalent de DATEDIFF dans SQL Server?

J'aimerais connaître la différence qui peut exister entre deux dates, en mois, en jours, en heures ou en minutes ...

Solution

Sur Oracle, c'est un problème d'arithmétique

 sélectionnez DATE1-DATE2 à partir de deux 

1 = 1 jour, le chiffre après la virgule représente la fraction de jours.

Utilisez trunc () pour le nombre de jours

Sinon, multipliez la valeur

  • par 24 heures
  • en 1440 pour les minutes
  • par 86400 pour les secondes

Merci à Krysstof pour ce conseil.

Article Précédent Article Suivant

Les Meilleurs Conseils