De Oracle-database manager kan meerdere soorten gegevens op te slaan in de database velden , inclusief leesbare snaren met data en tijden . Het berekenen van de exacte verschil tussen twee momenten in de tijd is een veel voorkomende operatie , het kan nodig zijn om een nieuw veld , een weergave te maken of om de resultaten van een query te filteren . U kunt precieze tijdsverschillen in uw Oracle tabellen en query resultaten te berekenen . Instructies 1 Verklaar de velden opslaan van de begin-en eindtijd van wie verschil dat je uiteindelijk wilt berekenen als het hebben van het type TIMESTAMP . Het type TIMESTAMP is degene die u de hoogste precisie mogelijk maakt , tot fracties van een seconde . Bijvoorbeeld , het definiëren van uw tabel als volgt : CREATE TABLE times_for_diff { initial_time TIMESTAMP , final_time TIMESTAMP } ; 2 Bevolk uw tafel met behulp van de juiste functie te zetten tussen een voor mensen leesbare vorm en TIMESTAMP . Typisch , worden data en tijden gecodeerd als strings . Dit monster code voegt een record in de steekproef tabel : INSERT INTO times_for_diff ( initial_time , final_time ) WAARDEN ( TO_TIMESTAMP ( '30 .5.1990:12:00:00 ' , ' DD . mm.yyyy : HH24 : MI : SS ' ) , TO_TIMESTAMP ( '31 .7.1992:14:00:00 ' , ' DD.MM.YYYY : HH24 : MI : SS ' ) op ) ; COMMIT ; de steekproef initiële tijd is middag , 30 mei 1990 , de laatste tijd is 2:00 , 31 juli 1993 < br . > 3 Bereken het verschil met behulp van de ingebouwde Oracle operator die een timestamp aftrekt van een ander , als volgt : SELECT ( final_time - initial_time ) op Twitter FROM times_for_diff ; de output van de query zal bestaan uit het verschil tussen de twee keer in elke rij van de " times_for_diff " tafel .
|