Odejmowanie czasu

0

Witajcie

Chcę odjac od siebie dwie daty. Probowalem chyba prawie wszstkiego co znam tj. rzutowanie, odejmowanie dat ale nic z tego. Ponizej wklejam skrypt. Mam baze danych ORACLE. Jak to powinno sie poprawnie robic? W kolumnie "przyjecie" jest dana zadeklarowana jako DATE.

Chce po prostu odjac od siebie date nastepna od poprzedniej a potem te roznice dodawac po kolei a do skonczenia sie cursora. Wywala blad ze sa rozne typy danych. Kiedy robie to w CMD to wszytko smiga a tutaj nie chce.

CREATE OR REPLACE PROCEDURE jakczesto IS

    Cursor zlicz_oblicz IS SELECT przyjecie FROM Chorzy;

zliczanie_czasu Chorzy.przyjecie%TYPE;
rekord_przed Chorzy.przyjecie%TYPE;
rekord_po Chorzy.przyjecie%TYPE;
tymcz_przechowanie NUMBER:=0;
roznica chorzy.przyjecie%TYPE;

BEGIN

    FOR czas IN zlicz_oblicz LOOP

            rekord_przed:=rekord_po;
            rekord_po:=czas;
            roznica:=CAST((rekord_po-rekord_przed) AS NUMBER);

    END LOOP;

    dbms_output.put_line('Czestotliwosc to:'||zliczanie_czasu);

END;
/

0

i oczywiście szukałeś i nigdzie nie było...
http://www.google.pl/search?q=oracle+date+subtraction

0

Moglbys to pokazac na tym przykladzie? Robie to pierwszy raz i nie wiem jak sie za to zabrac. Jak zrobic zeby roznica w datach byla w sekundach i zeby mozna je bylo potem zliczyc i np podzielic przez jakas liczbe?

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0