Citat:
delalt: Dodaš 1 sat pretvoren u sekunde, ali kao numeric a nikako kao integer.
Znači: CURRENT_TIME + (1.0 * 60.0 * 60.0) i opet dobiješ kao TIME.
Možda ćeš morati koristiti i CAST...
I još jedna važna stvar, moraš kontrolisati kako to da radi kad bude
CURRENT_TIME veće ili jednako '23:00:00' (dodavanjem jednog sata prelaziš
u novi dan pa vrijeme kreće od '00:00:00'), ako će se ovo uopšte dešavati u radu.
Da se nadovežem na ovaj tvoj odgovr sad kad sam skapirao foru. :)
Ako probaš da sabereš bilo koje dve TIME vrednosti pojaviće se greška.
Ali zato ovo radi bez greške i ne treba cast.
CREATE PROCEDURE TIMESUM(
FIRST_TIME TIME,
SECOND_TIME TIME)
RETURNS(
RESULT_TIME TIME)
AS
BEGIN
RESULT_TIME = :FIRST_TIME +
EXTRACT(HOUR FROM :SECOND_TIME) * 3600 +
EXTRACT(MINUTE FROM :SECOND_TIME) * 60 +
EXTRACT(SECOND FROM :SECOND_TIME);
SUSPEND;
END
Da šutnem ovo i u korisne procedure?
viking ®