So ermitteln Sie die Anzahl der Male zwischen zwei Zeitpunkten in Oracle SQL

Autor: Sara Rhodes
Erstelldatum: 17 Februar 2021
Aktualisierungsdatum: 27 November 2024
Anonim
MongoDB.live 2020 Keynote
Video: MongoDB.live 2020 Keynote

Inhalt

SQL (Structured Query Language) ist die am häufigsten verwendete Methode zum Abrufen und Bearbeiten von Daten, die in einer Oracle-Datenbank gespeichert sind. Neben anderen leistungsstarken Befehlen, die zur Verarbeitung der Datenwerte verwendet werden, bietet Oracle SQL eine Methode zur Bestimmung der Differenz zwischen zwei Zeitpunkten. Oracle verfügt nicht über separate Datums- und Uhrzeitformate, verwendet jedoch ein einzelnes Datumsformat, das aus Datum und Uhrzeit in einer Spalte besteht.


Anweisungen

Oracle SQL kann die Anzahl der Stunden zwischen zwei Zeitpunkten bestimmen (Stundenbild von Mykola Velychko von Fotolia.com)
  1. Finden Sie zwei Datumsspalten in einer Oracle-Datenbank. Das Beispiel verwendet ein statisches Datum und ein Sysdate (Systemdatum). Angenommen, das aktuelle Systemdatum ist der 1. Januar 2010 um 12:00 Uhr. Dual ist eine integrierte Oracle-Systemschnittstelle, die zum Testen von Abfragen nützlich ist, die nicht von einer bestimmten Tabelle abhängig sind. Verwenden Sie diesen Befehl, um die zwei Datumswerte anzuzeigen.

    Wählen Sie to_char ('01 / 01/2010 ',' TT-MM-JJJJ HH24: MI: SS ') als' Current ', to_char (sysdate,' DD-MM-JJJJ HH24: Zeit "von Dual;

    Frühere Zeit | Aktuelle Uhrzeit ------------------------------ ----------------------------- 01/01/2010 00:00:00 | 01.01.2010 12:00:00


  2. Ändern Sie die Abfrage, um den aktuellen Zeitwert vom vorherigen Zeitwert abzuziehen. Das Ergebnis ist die Anzahl der Tage zwischen den beiden Datumswerten. Der verbleibende Teil des Dezimalpunkts steht für Tage und der rechte Teil für jeden Bruchteil eines Tages.

    to_char auswählen ('01 / 01/2010 ',' TT-MM-JJJJ HH24: MI: SS ') - to_char (sysdate,' DD-MM-JJJJ HH24:

    Unterschied

    0.25

  3. Ändern Sie die Abfrage, um das Ergebnis mit 24 zu multiplizieren, um den Bruchteil der Stunden zu konvertieren.

    select (to_char ('01 / 01/2010 ',' TT-MM-JJJJ HH24: MI: SS ') - to_char (sysdate,' DD-MM-JJJJ HH24: dual;

    Stunden

    6

Wie

  • Verwendet die to_char-Funktion, um das Format der Datumsfelder zu ändern.
  • Verwenden Sie dasselbe Verfahren, um die Anzahl der Wochen zwischen den beiden Datumsangaben zu bestimmen, indem Sie "Multiplizieren mit 24" in "Dividieren durch 7" ändern.

Hinweis

  • Fügen Sie keine Datumswerte hinzu, multiplizieren oder teilen Sie sie nicht.

Was du brauchst

  • Oracle-Datenbank
  • Interaktives SQL-Tool