Come determinare il numero di volte tra due volte in Oracle SQL

Autore: Bobbie Johnson
Data Della Creazione: 5 Aprile 2021
Data Di Aggiornamento: 18 Novembre 2024
Anonim
Minitab | Connessione ai db e report automatici
Video: Minitab | Connessione ai db e report automatici

Contenuto

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 dei dati, Oracle SQL fornisce un metodo per determinare la differenza tra due punti nel tempo. Oracle non ha formati di data e ora separati, ma utilizza un formato di data unico, che consiste in data e ora in una colonna.


indicazioni

Oracle SQL può determinare il numero di ore tra due volte (immagine ora di Mykola Velychko da Fotolia.com)
  1. Trova due colonne di date in un database Oracle. L'esempio utilizza una data statica e sysdate (data di sistema). Si supponga che la data corrente del sistema sia il 1 gennaio 2010 alle 12:00. Dual è un'interfaccia di sistema Oracle integrata utile per testare query che non dipendono da una tabella specifica. Utilizzare questo comando per visualizzare i due valori di data.

    selezionare to_char ('01 / 01/2010 ',' DD-MM-YYYY HH24: MI: SS ') come' Corrente ', to_char (sysdate,' DD-MM-YYYY HH24: Tempo "dal doppio;

    Tempo precedente | Ora corrente ------------------------------ | ----------------------------- 01/01/2010 00:00:00 | 01/01/2010 12:00:00


  2. Modificare la query per sottrarre il valore temporale corrente dal valore temporale precedente. Il risultato è il numero di giorni tra i due valori di data. La parte restante del punto decimale rappresenta i giorni e la parte destra rappresenta qualsiasi parte frazionaria di un giorno.

    selezionare to_char ('01 / 01/2010 ',' DD-MM-YYYY HH24: MI: SS ') - to_char (sysdate,' DD-MM-YYYY HH24:

    differenza

    0.25

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

    selezionare (to_char ('01 / 01/2010 ',' DD-MM-YYYY HH24: MI: SS ') - to_char (sysdate,' DD-MM-YYYY HH24: duale;

    orario

    6

suggerimenti

  • Usa la funzione to_char per variare il formato dei campi data.
  • Utilizzare la stessa procedura per determinare il numero di settimane tra le due date cambiando "moltiplicare per 24" a "dividere per 7".

avvertimento

  • Non aggiungere, moltiplicare o dividere i valori di data.

Cosa ti serve

  • Database Oracle
  • Strumento SQL interattivo