Heim >Datenbank >MySQL-Tutorial >Wie berechnet man die Differenz zwischen zwei Zeitstempeln in Oracle in Millisekunden?
Berechnen Sie genau die Millisekundendifferenz zwischen zwei Zeitstempeln in der Oracle-Datenbank
In der Oracle-Datenbank kann die Berechnung der Zeitdifferenz (in Millisekunden) zwischen zwei Variablen vom Typ TIMESTAMP durch direkte Subtraktion erreicht werden. Das Ergebnis wird als INTERVAL DAY TO SECOND dargestellt und enthält je nach Betriebssystemplattform Millisekunden oder sogar Mikrosekunden.
Der Sytimestamp auf Windows-Systemen enthält normalerweise Millisekunden, während er auf Unix-Systemen Mikrosekunden enthält. Zum Beispiel:
<code class="language-sql">select systimestamp - to_timestamp( '2012-07-23', 'yyyy-mm-dd' ) from dual;</code>
Um jede Zeiteinheit in INTERVAL DAY TO SECOND zu extrahieren, können Sie die EXTRACT-Funktion verwenden. Zum Beispiel:
<code class="language-sql">select extract( day from diff ) days, extract( hour from diff ) hours, extract( minute from diff ) minutes, extract( second from diff ) seconds from (select systimestamp - to_timestamp( '2012-07-23', 'yyyy-mm-dd' ) diff from dual);</code>
Um die Gesamtzahl der Millisekunden zu erhalten, können Sie diese Zeiteinheiten in Millisekunden umrechnen und hinzufügen:
<code class="language-sql">select extract( day from diff )*24*60*60*1000 + extract( hour from diff )*60*60*1000 + extract( minute from diff )*60*1000 + round(extract( second from diff )*1000) total_milliseconds from (select systimestamp - to_timestamp( '2012-07-23', 'yyyy-mm-dd' ) diff from dual);</code>
Häufig ist es jedoch praktischer, die Darstellung INTERVAL DAY TO SECOND beizubehalten oder separate Spalten zu verwenden, um verschiedene Zeiteinheiten zu speichern, anstatt die Gesamtzahl der Millisekunden zu berechnen.
Das obige ist der detaillierte Inhalt vonWie berechnet man die Differenz zwischen zwei Zeitstempeln in Oracle in Millisekunden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!