Nwlapcug.com


Come determinare il numero di ore tra due orari in Oracle SQL

Come determinare il numero di ore tra due orari in Oracle SQL


Structured query language (SQL) è il metodo più utilizzato per recuperare e manipolare i dati memorizzati in un database Oracle. Oltre ad altri potenti comandi utilizzati per elaborare i valori di data, Oracle SQL fornisce un metodo per determinare la differenza tra due punti nel tempo. Oracle non ha separati formati per date e orari, ma utilizza un formato di data unica che consiste di sia la data e l'ora in una colonna.

Istruzioni

1

Trovare due colonne di data in un database Oracle. Nell'esempio viene utilizzata una data statica e sysdate (data di sistema). Si supponga che la data di sistema corrente è 1° gennaio 2010 alle 12:0 Dual è una relazione di sistema Oracle built-in che è utile per testare le query che non sono dipendenti da una tabella specifica. Utilizzare questo comando per visualizzare la data di due valori.

Selezionare

TO_CHAR (1° gennaio 2010 ', ' DD-MM-AAAA HH24) come "Prima volta",

TO_CHAR (sysdate, ' DD-MM-AAAA HH24) come "L'ora"

da due;

All'inizio del tempo | L'ora

------------------------------ | -----------------------------

01/01/2010 00:00:00 | 01/01/2010 12.00

2

Modificare la query per sottrarre il valore corrente del tempo dal precedente valore del tempo. Il risultato è il numero di giorni tra i due valori di data. La parte a sinistra del separatore decimale rappresenta i giorni, e la parte a destra rappresenta qualsiasi parte frazionaria di un giorno.

Selezionare

TO_CHAR (1° gennaio 2010 ', ' DD-MM-AAAA HH24)-

TO_CHAR (sysdate, ' DD-MM-AAAA HH24) come "differenza"

da due;

differenza



0.25

3

Modificare la query per moltiplicare il risultato per 24 per convertire il valore frazionario a ore.

Selezionare

(to_char (1° gennaio 2010 ', ' DD-MM-AAAA HH24)-

TO_CHAR (sysdate, ' DD-MM-AAAA HH24) * 24 come "ore"

da due;

ore



6

Consigli & Avvertenze

  • Utilizzare la funzione to_char per variare il formato dei campi data.
  • Utilizzare la stessa procedura per determinare il numero di settimane tra due date modificando il "moltiplicare per 24" per "dividere per 7".
  • Non aggiungere, moltiplicare o dividere valori di data.