Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Berechnen Sie die Differenz zwischen 2 Datum / Uhrzeit in Oracle SQL

Sie können Datumsangaben in Oracle subtrahieren. Dadurch erhalten Sie die Differenz in Tagen. Multiplizieren Sie mit 24, um Stunden zu erhalten, und so weiter.

SQL> select oldest - creation from my_table;

Wenn Ihr Datum als Zeichendaten gespeichert ist, müssen Sie es zuerst in einen Datumstyp konvertieren.

SQL> select 24 * (to_date('2009-07-07 22:00', 'YYYY-MM-DD hh24:mi') 
             - to_date('2009-07-07 19:30', 'YYYY-MM-DD hh24:mi')) diff_hours 
       from dual;

DIFF_HOURS
----------
       2.5

Hinweis :

Diese Antwort gilt für Datumsangaben, die durch den Oracle-Datentyp DATE dargestellt werden .Oracle hat auch einen Datentyp TIMESTAMP , die auch ein Datum (mit Uhrzeit) darstellen kann. Wenn Sie TIMESTAMP subtrahieren Werten erhalten Sie ein INTERVAL; Um numerische Werte zu extrahieren, verwenden Sie EXTRACT Funktion.