Comment faire pour déterminer le nombre d'heures entre deux heures dans Oracle SQL

Structured Query Language (SQL) est la méthode la plus largement utilisée pour extraire et manipuler des données stockées dans une base de données Oracle. En plus d'autres commandes puissantes utilisées pour traiter des valeurs de date, Oracle SQL fournit une méthode pour déterminer la différence entre deux points dans le temps. Oracle n'a pas formats distincts pour les dates et heures, mais utilise un format de date unique qui consiste à la fois la date et l'heure dans une colonne.

Choses que vous devez

  • Base de données Oracle
  • Outil de SQL Interactive

Instructions

  1. Trouver deux colonnes de date dans une base de données Oracle. L'exemple utilise une date statique et le sysdate (date système). Supposons que la date de système actuel est de 1 Janvier 2010 à 12h00 Dual est une relation du système intégré Oracle qui est utile pour tester les requêtes qui ne dépendent pas sur une table spécifique. Utilisez cette commande pour afficher les deux valeurs de date.

    sélectionner

    to_char ('01 / 01/2010 ',' JJ-MM-AAAA HH24: MI: SS ') comme "Temps plus tôt",

    to_char (sysdate, «JJ-MM-AAAA HH24: MI: SS ') comme "Heure Actuelle"

    du double;

    Temps plus tôt | heure actuelle

    ------------------------------ | ----------------------------;




    01/01/2010 0:00:00 | 01/01/2010 12:00:00

  2. Modifiez la requête pour soustraire la valeur de l'heure de la valeur de temps auparavant. Le résultat est le nombre de jours entre les deux valeurs de date. La partie à gauche de la virgule représente les jours, et la partie de droite représente une partie fractionnaire d'un jour.

    sélectionner

    to_char ('01 / 01/2010 ',' JJ-MM-AAAA HH24: MI: SS ');

    to_char (sysdate, «JJ-MM-AAAA HH24: MI: SS ') comme "différence"

    du double;

    différence





    0,25

  3. Modifiez la requête pour multiplier le résultat par 24 pour convertir la valeur fractionnelle des heures.

    sélectionner

    (To_char ('01 / 01/2010 ',' JJ-MM-AAAA HH24: MI: SS ');

    to_char (sysdate, «JJ-MM-AAAA HH24: MI: SS ') * 24 comme "heures"

    du double;

    heures


    6

Conseils & Avertissements

  • Utilisez la fonction to_char faire varier le format des champs de date.
  • Utilisez la même procédure pour déterminer le nombre de semaines entre deux dates en changeant la "multiplier par 24" à "diviser par 7."
  • Ne pas ajouter, multiplier ou les valeurs de date de fracture.
» » » » Comment faire pour déterminer le nombre d'heures entre deux heures dans Oracle SQL