Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Ako vypočítať časový rozdiel v Oracle

Správca databáz Oracle je možné uložiť niekoľko typov dát v databázových polí , vrátane čitateľného reťazca s dátami a časy . Výpočet presný rozdiel medzi dvoma okamihmi v čase je veľmi bežná operácia , ale môže byť potreba vytvoriť nové pole , zobrazenie alebo filtrovať výsledky dotazu. Môžete vypočítať presné časové rozdiely v tabuľkách Oracle a výsledky dotazu. Pokyny dovolená 1

deklarovať pole ukladanie začiatok a koniec času , ktorého rozdiel si nakoniec chcete vypočítať ako s timestamp Typ . Typ TIMESTAMP je ten , ktorý vám umožňuje najvyššiu presnosť , až do zlomku sekundy . Napríklad , definovať tabuľku takto :

CREATE TABLE times_for_diff {

initial_time TIMESTAMP ,

final_time TIMESTAMP

} ;
2

Naplniť tabuľku pomocou príslušnú funkciu pre konverziu medzi typom čitateľné pre človeka a časovú pečiatku . Typicky , dáta a časy sú kódované ako reťazce . Tento ukážkový kód vloží záznam do tabuľky vzorky :

INSERT INTO times_for_diff ( initial_time , final_time )

hodnoty ( TO_TIMESTAMP ( '30 .5.1990:12:00:00 ' , ' DD . MM.YYYY : HH24 : MI : SS ' ) ,

TO_TIMESTAMP ( 31. .7.1992:14:00:00 ' , ' DD.MM.RRRR : HH24 : MI : SS ' )

) ;

COMMIT ;

Vzorka Počiatočný čas je na poludnie , 30. mája 1990 , konečný čas je štrnásť hodín , 31 júla 1993
< br . > 3

Vypočítajte rozdiel pomocou zabudovaného - in Oracle operátor , ktorý odpočítava jeden časovú pečiatku od druhého , takto :

SELECT ( final_time - initial_time )

Z times_for_diff ;

Výstup dotazu bude skladať z rozdielu medzi dvoma časmi v každom riadku " times_for_diff " tabuľky .

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené